|
개인적으로는 HTML5가 등장하면서 Node.js에 대해서 알게 되었고 구현방법에 대해서 관심을 갖게 되었다. Node.js는 서버사이드 자바스크립트로 구글의 자바스크립트 엔진인 V8을 기반으로 구성된 소프트웨어 시스템이다. Node.js는 웹 클라이언트 개발 시에 사용했던 것과 같은 자바스크립트를 기반으로 하면서도 역자가 언급했듯이 C++ 개발자의 전유물처럼 생각되었던 고성능 서버 프로그램 개발의 문턱을 획기적으로 낮추었다고 할 수 있다. 그동안 클라이언트에서 주로 사용되던 자바스크립트를 서버에서 사용하고자 했던 노력의 결실인 셈이다.
이 책에는 Node.js를 설치하기 위한 개발환경 구성에서부터 REPL(대화형 콘솔)을 통한 대화형 Node, Node의 코어, Node 모듈 시스템, 제어 흐름, 비동기 패턴, 예외처리, 트래픽 라우팅, 파일서비스, 미들웨어, Express 프레임워크, Redis를 사용한 구조화된 데이터, MongoDB를 사용한 문서 중심 데이터, 관계형 데이터베이스 바인딩, HTML5를 사용한 그래픽 및 비디오 구현과 PDF 생성 및 다루기, 웹 소켓, 보안, 애플리케이션 테스트 및 디버깅, 확장 및 배포 등에 이르기까지 기본적인 세팅과 함께 다양한 기술적 구현을 다룬다. Node는 Git 소스 제어 기법과 밀접하게 연관되어 있으며, 대부분의 Node 모듈이 GitHub에서 호스팅되고 있기 때문에 이 책에는 Git/GitHub에 대한 안내서도 부록으로 제공하고 있다. |
|
회사에서 업무적으로 node를 적극 사용해야해서 일단 닥치는 대로 책을 사서 읽었습니다. Yes24 현재 node.js 로 검색해서 나오는 책들 몇 권은 이미 다 읽었습니다.
현재 제 키보드 옆에는 항상 이 책이 있습니다. 읽어도 읽어도 또 읽을 내용이 생깁니다. 항상 참고할만 하고 읽으면 읽으수록 새롭습니다.
책이란 한번 보고나면 의미를 읽어버리기 쉬운데 이렇게 지속적으로 손에 잡게 만드는 건 그 만큼 다루는 내용이 많으면서 깊이도 있다는 뜻일 겁니다.
비록 이제는 이 책에 나오면 몇몇 예제들은 모듈들이 진화하면서 deprecated 되버린 것들도 있으나 그런 부분을 찾아보는 것도 나름 재미가 있습니다. Node는 지금 정말 빠르게 진화하고 있고, 제가 보기엔 stack overflow조차 트랜드를 못따라갑니다.
Node 개발을 시작하거나 지속적으로 해야 하는 분이라면 이 책은 꼭 옆에 끼고 지내시면 좋을 듯 합니다. |
|
한때 개발자들 사이에서 스크립트 언어가 컴파일 언어에 비해 상대적으로 저평가를 받던 시기가 있었다.
이건, 일부 오래된 개발자 사이에서는 아직 유효하기도 하지만, 모바일 및 html5로 인해 웹 관련 개발자들의 위상이 이전보다 훨씬 높아졌다.
이는 ajax로 인해 위상이 높아진 클라이언트의 언어도 마찬가지이다.
한때 언어로조차 대접받지 못하던 자바스크립트가 지금은 최고의 대접을 받고 있다.
내가 Node.js에 대해 관심을 가진 이유는 자바스크립트는 클라이언트에 종속된 언어라 생각했는데, 그것을 서버에서 사용한다는 무척 매력적인-적어도 나에게는 ㅎㅎ- 장점 때문이였다.
지금 진행 예정인 프로젝트는 서비스 특성상 I/O가 무척 심하다.
그런 특성을 가장 잘 처리할 수 있는, 그러면서도 상대적으로 고효율적인 언어를 찾다가 발견한 것이 바로 노드이다.
이 책은 노드에 대해 전반적인 것들을 소개한다.
O'Relly의 책의 특성을 그대로 보여주고 있다.
노드에 대해 설명하고, 언어의 특징과 핵심적인 기능을 알려준다.
내가 몰랐던 부분을 아주 제대로 긁어주는 시원한 맛은 있지만, 전체적인 그림을 그리기에는 조금 아쉬운 부분이 있다.
하나의 프로젝트를 진행하면서 처음부터 끝까지 전체적인 흐름과 사용을 볼 수 있는 코드를 제공하면 좋겠지만, 이는 O'Relly스럽지는 않다. ㅎㅎ
자바스크립트로 네트워크 환경을 구축할 수 있다는 것.
그 하나만으로 이 책이 시사하는 바는 무척 크다.
C나 C++ 프로그램으로 인해 네트워크에 대해 고민이 많았다면, 그 대안으로 노드를 생각해 보는 것은 어떨까 고민해 보는 것도 좋을 듯 하다.
|
|
요즘 가장 핫! 한 언어라면 단연 Node.js이다. JavaScript가 Client Side에서 점점 자리가 커지더니 이제는 Server Side까지 넘어왔다. 게다가 요즘은 MongoDB에서는 SQL 대신 쓰기도 한다. 그런데 기존의 웹프로그래밍을 했던 프로그래머들은 JSP, PHP를 하던 통밥으로 대충 구글에서 보던 자료로 알 수 있을 것 같지만 약간 개념이 달리한다. 무엇보다 비동기 방식이라는 개념이다. 따라서 이를 컨트롤 하는 것이 쉽지 않다고들 이야기 한다. 그래서 여러가지 새로운 개념이 Node.js에서 들어가면서 사실 프로그래밍적 기법 뿐 아니라 이론적인 구동방식도 배워야 할 필요성이 생긴다. 이 책에서는 그러한 개념들을 다양하게 끌어와 설명하고 있다. 제어 흐름, 비동기 패턴이라던던지, 요즘 나오는 MongoDB와의 연계하기, RDBMS Binding, WebSocket, Framework 등 절차적으로 단계를 깊게 높여 나가기 보다 개괄적인 Node.js의 배경을 두는 기술들을 알려 준다. 차분히 알려주는 책을 원한다면 모르겠지만, 다양한 접목된 기술을 경험해 보고 싶다면 이 책이 매우 유익할 것이다. |