[한빛리더스 시즌2 도서리뷰] 한권으로 끝내는 Node & Express
한 권으로 끝내는 Node & Express(Node 4, Express 4 테스트 완료)
동적 웹 앱을 구축하는 자바스크립트 개발 스택의 핵심은 노드와 익스프레스다. 이 책은 노드와 익스프레스 기반으로 REST API를 갖춘 웹사이트를 구축해나가면서, 동적 웹 앱 구축에 필요한 서버 사이드 기법들을 살펴본다. 빠르고 효율적인 웹 개발에 필요한 다양한 노드 패키지와 익스프레스 미들웨어의 설치 및 사용법을 배우고, 나아가 몽고DB와의 연결, 보안, 소셜 및 지도 서비스와의 통합, 디버그 및 유지보수까지 웹사이트 구축에 필요한 모든 서버 사이드
- 저자 : 이선 브라운
- 번역 : 한선용
- 출간 : 2015-10-24
본론에 앞서 본 책에 대해 리뷰한 본인의 생각을 짧게 요약하면 다음과 같다.
390여쪽으로 구성된 웹 개발을 처음 시작하려 하거나 이미 개발중인 상태에서 가볍게 참고할 수 있는 수준이다.
본 책에서는 "메도라크"라는 여행사의 웹 사이트를 예제로 활용하기 위해서 초반부(1~11장)에서 HTTP에 관련된 URL 소개, 쿠키와 세션, 템플릿, Node와 Express 소개를 다룬다. 그리고 후반부(11~23장)에는 약간 초보적인 내용과는 거리가 멀 수 있는 중급이상의 경험과 실력이 요구되는 MVC 패턴, 보안, 타사 API와의 통합, 디버그, 실무 관심사(웹 사이트 모니터링 방법, 실무환경 시뮬레이트하는 방법)를 소개하면서 초보자가 아닌 중급실력자도 볼 수 있도록 책을 구성해놓았다.
책을 구성하고 있는 주요 목차(전체 목차는 목차를 참고)만을 간단히 살펴보면 다음과 같습니다.
[1~2장]
노드와 익스프레스를 간단히 소개하면서 시스템에서 노드만 사용하여 단순한 웹 서버를 설치 및 만드는 실습
[3장]
Express를 사용해서 2장에서 만들었던 웹 서버를 조금 변형하는 작업
[4장]
버전관리에 대한 간략한 내용(공식 저장소, npm 패키지, 프로젝트 메타데이터, 노드 모듈)
[5장]
품질 보증(Quality Assurance)의 기본내용 및 관련 내용을 소개하면서 독자의 이해를 돕는다
페이지 테스트, 교차 페이지 테스트, 논리 테스트, 린트, 링크 체크
[6장]
클라이언트와 서버간 데이터 송/수신을 위한 HTTP 기본 배경지식 학습(URL)
[9장 : 쿠키와 세션]
세션 개념, 세션을 적용해야 할 대상
[12장 : 실무 관심사]
웹 사이트 확장 방법, 웹 사이트 모니터링 방법
[15장 : REST API & JSON]
작성한 앱에 웹 서비스 추가 방법, 데이터와 기능을 다른 프로그램에게 제공하는 방법
[17장 : 익스프레스에서 MVC 구현]
뷰 모델 및 컨트롤러 개념 소개
[18장 : 보안]
HTTP 설명, 타사 인증 HTTP 메커니즘 소개
[19장 : 타사 API와의 통합]
소셜 미디어와 지오로케이션과의 통합에 관련된 소개
[20~21장 : 사이트 오픈 및 디버그]
사이트 오픈전에 제거해야 할 디버그, 오픈 과정 설명
[22장 : 유지보수]
개인마다 다르겠지만 본인의 느낌으로는 책은 크게 2부분 즉, 1~11장과 12~23장으로 나뉘어짐을 알 수 있었다.
책에서는 메도라크 여행사라는 웹 사이트를 대사응로 개발을 진행하고 있다.
이를 위해서 전반부에서 Node 및 Express의 개념에서부터 시작하여 클라이언트 및 서버간에 데이터를 주고받은 형식(요청과 응답객체)과 관련된 HTTP에 관련된 내용을 소개한다.
그리고 템플릿, 쿠키와 세션, 이메일 보내기 실습을 진행하면서 전반부를 마치고 있다.
후반부를 살펴보면 전반부 내용과는 달리 약간 초보자 입장에서 이해하기 어려울 수 있는 실무적인 내용과 약간 경험과 지식이 요구되는 내용을 다루고 있음을 알 수 있었다.
MVC 패턴, 웹 사이트 모니터링, 웹 서버 데이터베이스에 자료가 저장되는 구조 및 형식, REST API 와 JSON, 보안, 타사 API와의 통합, 디버그, 유지보수, 사이트 오픈이 바로 그것이다.
중급 이상의 개발자가 학습하기에는 버겁지 않을 수 있으나 본 책을 참고하여 웹 사이트를 개발자하고자 하는 초보 개발자의 경우에는 REST API & JSON, 디버그, 웹 사이트 모니터링, MVC 패턴과 관련된 서적 및 내용을 개인적으로 따로 학습하면서 진도를 나가는 것이 좋다는 생각이 들었다.