본문 바로가기

도서 소개

실무에 바로 적용하는 Node.js

 

그동안 읽어주신 분들께 감사드립니다. 이 책은 현재 절판되었습니다.

흥미로운 예제, 실용적인 코드로 배우는 Node.js!

아마존 Node.js 분야 No.1 베스트셀러!

 

출판사 제이펍

원출판사 Apress

원서명 Practical Node.js: Building Real-World Scalable Web Apps (ISBN: 9781430265955)

저자명 아자트 마르단

역자명 테크 트랜스 그룹 T4

출판일 2015년 8월 28일

페이지 348쪽

시리즈 (없음)

판 형 (188*245*17)

제 본 무선(soft cover)

정 가 24,000원

ISBN 979-11-85890-27-2 (93000)

키워드 Node.js / 자바스크립트 / MongoDB / Jade / Mocha / Express 4 / Expect / TravisCI / Redis / OAuth

분야 웹 프로그래밍 / 자바스크립트

관련 사이트

원출판사 도서소개 페이지

아마존 도서소개 페이지

Node.js 공식 홈페이지

 

관련 포스트

2015/08/19 - [출간전 책소식] - 아마존에서 가장 많이 팔리는 바로 그 Node 책!

 

관련 시리즈

■ (없음)

 

관련 도서

자바스크립트 & 제이쿼리: 인터랙티브 프론트엔드 웹 개발 교과서

기초를 다지는 최신 웹 개발 공략서

엄선 111 자바스크립트 라이브러리 실전 활용

자바스크립트 마스터북: 기초부터 Ajax/jQuery까지

인터랙티브 웹 콘텐츠 제작 프로젝트

머리에 쏙쏙 들어오는 jQuery 입문

 

관련 파일 다운로드

■ (없음)

 

예제 소스 코드

https://github.com/Jpub/PracticalNodeJS

 

 

강의 자료

(교재로 채택하신 분들은 출판사로 메일을 보내주세요) => jeipubmarketer@gmail.com

■ 본문의 그림과 표

■ 예제 소스 코드

 

샘플 PDF

■ 차례, 옮긴이 머리말, 시작하며, 지은이 소개, 감수자 소개, 감사의 글, 베타리더 후기, 1장 Node.js와 필수 요소 설치하기, 찾아보기

실무에바로적용하는Node.js_sample.pdf
다운로드

 

정오표 페이지

■ (등록되는 대로 링크를 걸어 드리겠습니다)

 

도서구매 사이트(가나다순)

[강컴] [교보문고] [도서11번가] [반디앤루니스] [알라딘] [예스이십사] [인터파크]

 

출판사 서평

흥미로운 예제, 실용적인 코드로 배우는 Node.js!

아마존 Node.js 분야 No.1 베스트셀러!

 

Node.js는 웹 서비스를 만들기 위한 혁신적이고 가장 효율적인 플랫폼이긴 하지만, 장점만 있는 건 아니다. 최신 웹 개발에서는 다양한 컴포넌트들도 함께 사용되고 있는데, 라우팅, 데이터베이스 드라이버, ORM, 세션 관리, OAuth, HTML 템플릿 엔진, CSS 컴파일러, 테스팅, 적용 등이 이에 해당한다. 따라서 Node.js에 대한 기본 지식이 있다면 다양한 에코시스템 패키지와 어떻게 균형 있게 사용할 것인지를 먼저 살펴야 한다.

 

이 책은 자바스크립트와 Node.js 기본 개요를 제공하고, 웹 애플리케이션 제작을 위한 모든 필수 모듈 설치법을 제공한다. 책의 구성은 블로그 프로젝트에서부터 다른 작은 예제를 다루는 식으로 전개된다. 데이터베이스 스크립트를 만들고 RESTful API, 테스트, 스크래치로부터 전체 스택 애플리케이션에 이르기까지를 다룬다. Git을 어떻게 사용하는지, Heroku에 어떻게 적용하는지, 그리고 아마존 웹 서비스에 적용하는 예제와 데몬화 애플리케이션에 대해서도 다루고 있으며, Nginx, Varnish Cache, Upstart, init.d, forever 모듈도 다룬다. 마지막으로, 사용자 자신만의 Node.js 모듈 개발 방법과 NPM에 퍼블리싱하는 방법도 제공한다.

 

이 책의 대상 독자

⚫ 제너럴리스트 또는 개발 운영(DevOps) 엔지니어와 품질 관리(QA) 엔지니어를 포함한 풀 스택 개발자

⚫ 브라우저 자바스크립트에 대한 확실한 배경 지식과 이해력을 갖춘 숙련된 프론트엔드 웹 개발자

⚫ 자바, PHP, 루비와 같은 다른 언어를 사용해왔으나 자바스크립트 언어를 파악하기 위해 좀 더 많은 시간을 기꺼이 투자하려 하는 경험 많은 백엔드 소프트웨어 엔지니어

 

지은이 소개

아자트 마르단(Azat Mardan)

아자트는 웹, 모바일, 소프트웨어 엔지니어링 분야에서 다년간 경험을 쌓아왔으며, 학부 과정으로 정보학을, 그리고 석사 과정으로 정보 시스템 기술을 수료하면서 깊이 있는 학문적 지식뿐만 아니라 다양한 실무 경험을 갖추게 되었다. 그는 현재 도큐사인(DocuSign)에서 팀 리더이자 시니어 소프트웨어 엔지니어로 근무하고 있으며, 그의 팀은 Node.js, Express.js, Backbone.js, CoffeScript, Jade, Stylus, 그리고 Redis와 같은 최신 기술 스택들을 사용하여 오천만 명의 유저를 보유한 도큐사인 웹 애플리케이션을 재구축하는 작업을 진행 중이다.

이전에는 Storify.com(2013년), 국가생물공학센터, 연방 예금 보험공사, 록히드마틴 등에서 시니어 소프트웨어 엔지니어로 종사하였으며, 또한 Marakana(2013년), pariSOMA, General Assembly San Francisco, Hack Reactor에서 프로그래밍 수업을 가르쳐 호평을 받았다. 또한, 그는 자바스크립트와 Node.js에 관해 네 권의 책을 집필하였는데, 아마존의 클라이언트 서버 카테고리 중 최고의 베스트셀러인 《풀스택 자바스크립트 개발: 실습 중심의 모던 웹 애플리케이션 프로그래밍》(위키북스)도 포함되어 있다. 여가 시간에는 그의 블로그(webapplog.com)에 과학 기술과 관련된 글을 쓰고 있다.

 

오픈 소스 Node.js 프로젝트인 ExpressWorks, mongoui, HackHall과 NodeFramework.com의 창시자일 뿐만 아니라 Express, OAuth, jade-browser, 그리고 다른 Node Package Manager 모듈들에 기여하고 있는 공헌자이기도 하다.

 

감수자 소개

피터 엘스트(Peter Elst)

피터는 멀티미디어와 애플리케이션 개발자로, 웹 표준에 관심이 많다. 현재 구글의 크리에이티브 이노베이션(creative innovation)에서 웹 솔루션 엔지니어로 일하고 있다. 십여 년이 넘는 세월 동안 정기적으로 기술 감수를 시행하고 있으며, 《HTML5 솔루션: 실전 문제 해결을 위한 81가지 방법》(2012)을 포함한 다수의 책을 공동 집필하였다. 또한, 그는 업계의 수많은 행사에서 높이 평가되는 발표자이기도 하다. 그의 최근 관심사와 진행하고 있는 프로젝트에 대해 자세히 알고 싶다면 그의 개인 블로그(peterlst.com)를 방문해보자.

 

옮긴이 소개

테크 트랜스 그룹 T4

엔터프라이즈 환경에서 오픈 소스를 활용한 프레임워크를 구축하는 일에 관심이 많으며, 최근에는 모바일을 접목한 하이브리드 환경에서 사용자 인터페이스와 사용자 경험 UI/UX, HTML5, Spring, NoSQL, Node.js, AngularJS 등 아키텍처 전반에 걸친 웹 기술과 빅 데이터, 인지컴퓨팅 기술을 적용하는 일에 집중하고 있다. 아두이노와 라즈베리파이 등의 다양한 오픈 하드웨어 디바이스를 사용한 사물인터넷 관련 서비스도 제공하고 있다.

HTML5와 CSS3, 자바스크립트 프로그래밍, Node.js, AngularJS, MySQL, MongoDB와 관련된 다수의 서적을 번역하였으며, 웹과 데이터베이스 관련 기술 전파에 노력 중이다.

 

차례

CHAPTER 1 Node.js와 필수 요소 설치하기 1

Node.js와 NPM 설치하기 1

Node.js 스크립트 실행하기 9

Node.js 기초와 문법 10

Node.js 프로그램 디버깅하기 27

Node.js IDE와 코드 편집기 32

파일 변경 감시하기 34

정리 35

더보기

CHAPTER 2 Express.js 4를 이용한 Node.js 웹 애플리케이션 생성 37

Express.js란? 38

Express.js 동작 방식 41

Express.js 설치 42

Express.js 스캐폴딩 47

블로그 프로젝트 개요 53

Express.js 4 Hello World 예제 56

정리 66

CHAPTER 3 Mocha를 이용한 Node.js용 TDD와 BDD 67

Mocha 설치 및 사용법 이해 68

assert를 사용한 TDD 71

expect.js를 사용한 BDD 74

프로젝트: 블로그용 BDD를 처음으로 작성하기 76

정리 81

CHAPTER 4 템플릿 엔진: Jade와 Handlebars 83

Jade 문법과 특징 84

독립적 Jade 사용법 93

Handlebars 문법 97

독립적인 Handlebars 사용법 104

Express.js 4에서 Jade와 Handlebars 사용법 106

프로젝트: 블로그에 Jade 템플릿 추가하기 109

정리 119

CHAPTER 5 MongoDB와 Mongoskin을 이용한 데이터 저장 121

쉽고 적절한 MongoDB 설치 122

Mongo 서버 실행 방법 124

Mongo 콘솔을 통한 데이터 조작 125

MongoDB 셸 127

Node.js 예제를 위한 최소화된 네이티브 MongoDB 드라이버 128

주요 Mongoskin 메소드 132

프로젝트: Mongoskin을 사용하여 MongoDB에 블로그 데이터 저장 134

정리 150

CHAPTER 6 Node.js 애플리케이션에서 Session과 OAuth를 이용한 사용자 인증 및 권한 부여 151

Express.js 미들웨어를 이용한 권한 부여 152

토큰 기반 인증 153

세션 기반 인증 154

프로젝트: 블로그에 이메일과 패스워드 기반 인증 구현 155

Node.js OAuth 162

프로젝트: Everyauth를 이용하여 블로그에 Twitter OAuth 1.0 로그인 구현 166

정리 173

CHAPTER 7 Mongoose ORM 라이브러리를 사용한 Node.js 데이터 처리 175

Mongoose 설치 176

독립형 Mongoose 스크립트 내 연결 수립 176

Mongoose 스키마 179

코드 구성 유지를 위한 후크 181

커스텀 정적/객체 메소드 182

Mongoose 모델 182

포퓰레이션을 이용한 관계와 조인 185

중첩된 도큐먼트 187

가상 필드 189

스키마 타입 동작 변경 190

Express.js + Mongoose = true MVC 192

정리 204

CHAPTER 8 Express.js와 Hapi를 이용한 Node.js REST API 서버 구축 205

RESTful API 기본 206

프로젝트 종속성 208

Mocha와 Superagent를 이용한 테스트 커버리지 209

Express와 Mongoskin을 이용한 REST API 서버 구현 215

리팩토링: Hapi.js REST API 서버 222

정리 229

CHAPTER 9 웹소켓, Socket.IO, DerbyJS를 이용한 실시간 애플리케이션 231

웹소켓의 정의 231

네이티브 웹소켓과 ws 모듈을 사용한 Node.js 예제 232

Socket.IO와 Express.js 예제 236

DerbyJS, Express.js, MongoDB를 사용한 공동 온라인 에디터 예제 241

정리 251

CHAPTER 10 Node.js 애플리케이션 운영 준비 사항 253

환경 변수 254

Express.js 운영 254

Socket.IO 운영 257

오류 처리 258

오류 처리를 위한 Node.js 도메인 260

cluster 기반 멀티스레딩 264

cluster2 기반 멀티스레딩 266

이벤트 로깅과 모니터링 267

Grunt를 이용한 태스크 빌드 272

Git을 이용한 버전 관리 및 배포 276

TravisCI 클라우드에서 테스트 수행 281

정리 283

CHAPTER 11 Node.js 애플리케이션 배포 285

Heroku에 배포 285

아마존 웹 서비스에 배포 292

forever, Upstart, init.d를 사용한 Node.js 애플리케이션 지속 구동 297

Nginx를 사용한 정적 리소스 제공 302

Varnish를 이용한 캐싱 305

정리 307

CHAPTER 12 Node.js 모듈 게재와 오픈 소스 활동 309

권장 폴더 구조 310

필수 패턴 311

package.json 314

NPM 게시 314

버전 잠금 315

정리 316

《실무에 바로 적용하는 Node.js》 결론 316

추가 읽을거리 317

찾아보기 319