카테고리:

2 분 소요

JavaScript라는 단일 언어로 클라이언트와 비동기 이벤트 기반 서버를 빠르고 효율적으로 개발하고 싶은 개발자들에게 추천하고 싶은 책

업무에 활용하는 Node.js 커버 사진

필요한 선수 지식

요구 학력 : X

예제 코드 : JavaScript

난이도 : ★☆☆☆☆

책의 구성 중 마음에 들었던 주제

1장 처음 만나는 Node.js

개발자들이 흔히 궁금해하는 작동원리를 설명하는데, 비동기 이벤트 기반 서버의 작동 원리를 설명하기 위해 상당히 노력한 느낌이 난다. 특히 libuv에 기반한 논블로킹 I/O와 이벤트 루프, C10K 문제에 대해 심층적으로 다룬다.

4장 Node.js에서의 비동기 처리

현대 프로그래밍 언어는 기본적으로 비동기 처리를 지원한다. 그중 많은 언어들이 await과 async 키워드로 쉽게 비동기를 사용할 수 있도록 구현되어 있는데 JavaScript도 포함된다. 특히, 비동기 처리의 기본인 Callback과 연결지어 언어의 발전 단계를 설명하는데, 콜백 지옥을 보완하기 위한 Promise, Promise를 사용함으로 인한 코드가 장황해지는 문제를 보완하기 위한 await과 async 키워드로 연결되는 예시를 포함하여 자세히 설명한다.

6장 익스프레스를 이용한 REST API 서버/웹 서버

Express.js는 요즘 많이 사용하는 RESTful API 서버를 구현하기 위한 프레임워크이다. 에러 핸들링과 데이터베이스 연동, ejs를 통한 뷰 템플릿 사용 등의 방법을 설명한다. 후반부에 배포 방법과 도커를 사용한 배포 방법에 대해 설명하는데, 백엔드에 필수적인 CD(Continuous Delivery/Deployment) 방법을 설명하지 않아서 살짝 아쉬웠다.

읽고 난 후

추천 지수 : ★★★★☆

기본적으로 많은 삽화와 풍부한 각주, 소스코드에 달린 주석 등 주니어 개발자가 읽기에도 무리가 없도록 굉장히 친절하게 설명되어 있다. 그리고 해당 절이 끝나는 시점에 필자가 하고 싶은 내용이나 곁들일 만한 설명이 필요한 경우에는 ‘COLUMN’이라는 섹션에서 설명되어 있다. 하지만 전혀 필요하지 않은 내용이 아니고, 읽으면 추후에 도움이 될만한 내용들이라 전혀 거슬리지 않았다.

다만, 책의 내용이 기초적인 내용이라 실무에 적용하려면 심층서가 필요해보인다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

태그: API, async, await, C10K, Callback, Express.js, JavaScript, libuv, Node.js, Promise, REST, RESTfulAPI, 비동기, 콜백

업데이트: