간편결제, 신용카드 청구할인
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (15,840원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (12,600원)
(최대할인 3만원 / 3만원 이상 결제)
하나SK 북&카드 30% (12,600원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (14,400원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (16,200원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (16,740원)
(최대할인 3만원 / 3만원 이상 결제)
Close

Node Web Development 한국어판 : 웹 개발 플랫폼 노드 프로그래밍

2013년 9월 9일 이후 누적수치입니다.

판매지수 19
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

20,000원

  • 18,000 (10%할인)

    1,000P (5%적립)

할인혜택
적립혜택자동적립
배송정보
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서(321)

  • 사은품(2)

출판사 서평

[ 요약 ]

[Node Web Development 한국어판]은 노드 웹 애플리케이션 개발의 핵심을 찌르는 탁월한 시작점이다. 실용적인 예제를 중심으로, HTTP 서버와 클라이언트 객체, Connect와 Express 프레임워크, 비동기 알고리즘, SQL과 MongoDB 데이터베이스 등을 배운다.

[ 소개 ]

이 책은 노드를 시작하기 위한 가장 이상적인 지침서다. 노드를 설치하는 실용적인 조언부터 시작해서 HTTP 서버와 클라이언트 애플리케이션 개발 방법을 배운다. 그리고 이 책은 노드의 다양한 활용법을 보여준다. 예를 들어 데이터베이스 스토리지 엔진을 연동한다든가 Connect/Express 프레임워크로 웹사이트를 만들기도 하고, 이런 프레임워크 없이 개발하는 방법도 소개한다. 또한 노드의 CommonJS 모듈 시스템에 대한 정보도 얻을 수 있다. 또한 CommonJS 모듈 시스템을 통해 객체지향 설계의 중요한 부분을 구현한다.

이 책에서 다루는 내용

- 웹 애플리케이션 개발에서 서버 측 자바스크립트 역할의 재발견
- 성능과 처리량을 위해 잘 알고 있는 아키텍처 선택
- 서버 측 웹 애플리케이션 개발을 위한 노드 설치와 사용
- Connect와 Express 애플리케이션 프레임워크의 사용
- SQL과 몽고DB 데이터베이스 시스템 설정
- 동기와 비동기 알고리즘의 차이점과 이 차이점이 중요한 이유

이 책의 대상 독자

이 책은 자바스크립트로 서버 측 개발을 하고 싶은 개발자, 즉 더 빠르고 성능 좋은 웹 애플리케이션을 만들고 싶은 개발자를 위한 책이다. 적어도 기본적인 자바스크립트를 이해하고 웹 애플리케이션 개발 경험이 있는 사람에게 권장한다.

이 책의 구성

1장, 노드 개요에서는 노드 플랫폼을 소개한다. 1장은 노드 사용법 외에 기술적인 측면과 설계적인 측면에서 노드를 선택한 이유를 설명한다. 그리고 노드와 서버 측 자바스크립트의 역사뿐 아니라 자바스크립트가 브라우저에 갇혀왔던 이유를 설명한다.

2장, 노드 설치에서는 노드 개발 환경을 구축한다. 물론 여러 시나리오에 따라 소스코드를 컴파일하는 과정이 포함돼 있다. 그리고 노드 서버를 맛보기로 만들어본다.

3장, 노드 모듈에서는 모듈을 설명한다. 모듈은 노드 애플리케이션 개발의 기본 단위다. 3장은 모듈을 이해하고 개발할 수 있게 안내한다. 그리고 노드 패키지 매니저(npm)도 자세히 설명한다. 또한 설치된 패키지를 관리하는 여러 시나리오와 npm 패키지를 개발해 배포하는 방법도 알아본다.

4장, 애플리케이션 응용에서는 노드 애플리케이션 개발에 대한 기초적인 내용을 설명한다. 특히 간단한 애플리케이션을 먼저 만들어보고 이것을 Connect와 Express 프레임워크를 이용해 변형해본다. 예제로 만들 애플리케이션이 간단하므로 이벤트 루프를 이해하는 데 좋은 기회가 된다. 그리고 시간이 오래 걸리는 계산과, 동기/비동기 알고리즘을 알아보고, 무거운 계산을 백엔드 서버로 처리하는 방법을 배운다.

5장, 간단한 웹 서버, 이벤트 이미터, HTTP 클라이언트에서는 HTTP 클라이언트와 서버 객체를 중심으로 설명한다. 서버와 클라이언트 애플리케이션을 각기 만들어 서로 통신하는 방법을 자세히 알아본다.

6장, 데이터 스토리지와 검색에서는 대부분의 애플리케이션에서 필요로 하고 데이터를 오랜 기간 안전하게 저장할 수 있는 데이터 스토리지를 설명한다. 그리고 SQL과 몽고DB 데이터베이스 엔진을 이용해 애플리케이션을 만드는 방법과 Express 프레임워크를 이용한 사용자 인증을 알아보고, 마지막으로 더 나은 에러 페이지에 대해서도 알아본다.

목차

1장 노드 개요
노드의 능력
서버 측 자바스크립트
노드를 사용해야 하는 이유
스레드 기반 아키텍처와 비동기 이벤트 기반 아키텍처
성능과 활용
더 적은 서버 활용과 그린 웹 호스팅
'노드' 용어
정리

2장 노드 설치
시스템 요구 사항
POSIX 시스템(리눅스, 솔라리스, 맥 등)에 설치
미리 설치해야 할 것
맥 OS X 환경에 맞는 개발자 도구 설치
홈(HOME) 폴더에 설치
홈 폴더에 설치해야만 하는 이유
시스템 전체 폴더에 설치
MacPort로 맥 OS X에 설치
homebrew로 맥 OS X에 설치
패키지 관리 시스템으로 리눅스에 설치
여러 개의 노드 동시 설치
설치 확인 명령
노드 커멘드라인 툴
간단한 스크립트 작성과 실행
노드 서버 실행
노드 패키지 매니저 설치
시스템 시작과 동시에 노드 서버 시작
멀티 코어 시스템에서 모든 CPU 사용
정리

3장 노드 모듈
모듈이란?
노드 모듈
노드가 require('module')을 해석하는 방법
모듈 식별자와 패스명
애플리케이션의 로컬 모듈
애플리케이션 안에 여러 버전의 모듈 넣기
require.paths를 이용한 시스템 전체 모듈
복합 모듈
npm 노드 패키지 매니저
npm 패키지 포맷
npm 패키지 찾기
npm 명령 사용
npm 명령 도움말 얻기
패키지 정보 보기
패키지 설치
설치된 패키지 사용
현재 설치된 패키지 보기
패키지 스크립트
설치된 패키지 내용 탐색과 수정
설치된 패키지 중 오래된 패키지 업데이트
설치된 패키지 제거
패키지 개발과 퍼블리싱
npm 환경 설정
패키지 버전 문자열과 범위
CommonJS 모듈
모듈 캡슐화 예제
정리

4장 웹 애플리케이션 응용
수학 마법사 제작
웹 프레임워크를 사용하거나 사용하지 않기
프레임워크 없이 수학 마법사 구현
노드의 라우팅 요청
URL 쿼리 파라미터 핸들링
곱셈 만들기
다른 수학 기능 만들기
수학 마법사 확장
오래 걸리는 계산(피보나치 수)
완벽한 웹 서버에서 빠진 기능
Connect로 수학 마법사 구현
Connect 설치와 설정
Connect 프레임워크로 접속
Express 프레임워크로 수학 마법사 구현
Express 수학 마법사 구현
에러 처리
URL 파라미터화와 데이터 서비스
Express에서 URL을 파라미터로 만들기
수학 계산 서버(와 클라이언트)
수학 서버로 수학 마법사 다시 작성
정리

5장 간단한 웹 서버, 이벤트 이미터, HTTP 클라이언트
이벤트 이미터를 이용해 이벤트 주고받기
EventEmitter 이론
HTTP 스니퍼: HTTP 대화 엿듣기
기본 웹 서버 구현
기본 서버 구현
기본 서버 코어(basicserver.js)
파비콘 핸들러(faviconHandler.js)
스태틱 파일 핸들러(staticHandler.js)
기본 서버의 설정(server.js)
Basic Server에 가상 호스트 설정
기본 서버의 짧은 URL 모듈
MIME 타입과 mime npm 패키지
쿠키 다루기
가상 호스트와 요청 라우팅
HTTP 클라이언트 요청 만들기
정리

6장 데이터 스토리지와 검색
노드를 위한 데이터 스토리지 엔진
SQLITE3: 가벼운 인프로세스 SQL 엔진
설치
sqlite3로 노트 애플리케이션 구현
데이터베이스 추상 모듈: notesdb-sqlite3.js
데이터베이스 설치: setup.js
콘솔에 노트 출력: show.js
노트 웹 애플리케이션: app.js
노트 애플리케이션 템플릿
sqlite3 노트 애플리케이션 실행
에러 디버깅과 핸들링
다른 SQL 데이터베이스 사용
몽구스: 몽고DB와 연결되는 노드 인터페이스
몽구스 설치
몽구스로 노드 애플리케이션 구현
데이터베이스 추상 모듈: notesdb-mongoose.js
데이터베이스 초기화: setup.js
콘솔에 노트 출력: show.js
애플리케이션에 노트 넣기: app.js
몽고DB를 지원하는 다른 데이터베이스 모듈
사용자 인증 처리 훑어보기
정리

본문중에서

노드를 이용한 웹 소프트웨어 개발 세계에 온 것을 환영한다. 노드는 새롭게 개발된 소프트웨어 플랫폼으로, 자바스크립트를 웹 브라우저에서 해방시켰다. 그리고 서버 측 애플리케이션에서 사용하는 일반적인 소프트웨어 개발 플랫폼으로, 자바스크립트를 사용한다. 노드에는 크롬 브라우저에서 사용하는 매우 빠른 자바스크립트, V8 엔진과 빠르고 튼튼한 비동기 네트워크 I/O 라이브러리가 탑재됐고, 뛰어난 성능과 확장이 용이한 서버를 만드는 데 초점이 맞춰졌다. 그리고 ‘실시간 웹’을 구현하는 클라이언트 애플리케이션에도 적합하다.

노드 플랫폼은 루비를 비롯한 다른 언어의 웹 서버 컴포넌트로 수년간 개발되다가 2009년 라이언 댈에 의해 형태를 갖췄다. 라이언 댈은 전통적인 스레드 기반의 동시성 모델보다 비동기 이벤트 기반 시스템을 플랫폼의 기반 구조로 선택했다. 당시 스레드 시스템은 개발하기 어렵다는 악명이 높았고, 비동기 이벤트 기반 모델은 이에 비해 훨씬 간단했다. 그리고 커넥션당 하나의 스레드를 유지하는 오버헤드가 적고, 속도도 빨랐다. 노드 목표는 ‘확장 가능한 네트워크 서버를 구축하는 쉬운 방법’을 제공하는 것이다. 노드는 이벤트 머신(루비)과 Twisted 프레임워크(파이썬) 같은 시스템에 영향을 받아 설계도 비슷하다.

이 책은 노드를 사용해 웹 애플리케이션을 만드는 데 초점을 맞췄다. 그리고 노드를 배우는 데 필요한 중요한 개념을 설명하고 안내한다. 먼저 실제 애플리케이션을 작성해보고, 어떻게 동작하는지 면밀히 분석하고 해부해 어떻게 애플리케이션에 이식할지 설명한다. 노드와 노드 패키지 매니저를 설치한다. 물론 어떻게 설치하는지부터 배우고 노드 모듈과 npm 패키지 개발에 대해서도 배운다. 그리고 여러 애플리케이션을 개발한다. 예를 들어 이벤트 루프가 반응이 없을 정도로 오래 걸리는 계산이나, 무거운 부하를 다른 서버로 분배하는 방법, Express 프레임워크를 이용한 애플리케이션 등을 만들어본다.
(/ 저자 서문 중에서)

노드(Node.js)라는 단어를 처음 접했을 때가 아마 작년 이맘때였을 것이다. 당시 노드는 내게 매력적인 단어는 아니었다. 특히 UI 개발자라는 직업 특성상 서버 측 이야기는 내게 큰 흥미를 주지 못했다. 그리고 정확히 1년이 지났다. 그동안 노드는 또 한 번 급성장을 했고, 내게도 많은 생각의 변화가 있었다. 노드는 더 이상 먼 나라 이야기가 아니라 내 이야기가 됐다. 이제는 이름만 들어도 알 수 있는 내로라하는 기업들이 너도 나도 노드를 활용한 신기술 연마에 여념이 없다. 물론 이것은 나라 밖 이야기다.

항상 신기술의 바람은 우리나라에 한 발짝 느리게 다가온다. 그리고 여전히 물음표를 던지는 사람이 많다. 노드의 성장세는 인정하지만 그럴듯한 성과를 보여주지 못한다고 비판한다. 그 중 가장 뼈아픈 질문은 노드로 성공한 케이스가 있느냐는 것이다. 사실 이 질문의 답은 나도 궁금하다. 물론 성공 사례를 들어가며 설명하는 것이 가장 쉬운 설득 방법임엔 틀림없다. 하지만 가장 확실한 방법은 직접 부딪혀보는 것이다. 직접 경험해본 것만큼 가장 확실한 설득도 없을 것이다.

노드를 직접 경험해보고 싶은 개발자에게 이 책은 그야말로 탁월한 선택이 아닐까 싶다. 이 책 Node Web Development 한국어판은 먼 나라 이야기 같은 노드를 우리 동네 이야기처럼 친절하고 자세하게 설명한다. 노드 설치에서부터 DB 연결까지 전반적인 웹 개발 스펙트럼을 모두 아우렀다. 뿐만 아니라 커맨드라인 도구 사용법과 CommonJS 모듈에 이르기까지 무심코 넘어갈 수 있는 것들도 꼼꼼하게 설명한다. 그리고 노드를 둘러싼 각종 의혹과 궁금증들도 소개한다. 저자는 특히, ‘왜 노드를 사용해야 하는가?’라는 질문에 대해 다양한 관점에서 실마리를 풀어낸다.

이 책을 번역하는 동안에도 노드는 계속 발전 중이다. 원서의 노드 버전은 0.4.8이었지만 내가 처음 번역을 시작했을 때는 0.5.8 버전이었다. 그리고 현재는 0.6.X 버전이 출시된 상태다. 어쩌면 이 책을 보게 될 여러분은 또 한 번 업그레이드된 노드를 보게 될지도 모르겠다. 그만큼 노드는 빠른 성장을 거듭하는 중이다.

그리고 노드는 단순히 새로운 웹 개발 플랫폼 이상의 의미가 있다. 그동안 브라우저 안에만 머물러 있어야만 했던, 혹은 머무를 수밖에 없었던 자바스크립트, 그리고 각종 오해와 멸시를 당했던 자바스크립트가 이제는 현대적이고 발전된 언어로 재조명되고 있다는 점이다. 나는 이것을 자바스크립트의 대반격이라고 말하고 싶다. 그리고 실제 자바스크립트의 대약진을 기대해본다.
(/ 옮긴이의 말 중에서)

저자소개

데이비드 헤론(David Herron) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

실리콘밸리에서 20년간 개발자이자 품질 엔지니어로서 소프트웨어 업계에 종사 중이다. 가장 최근에는 야후에서 품질 엔지니어링 팀의 아키텍트로, 노드 기반의 새로운 웹 애플리케이션 플랫폼을 연구했다.
썬 마이크로시스템즈(Sun Microsystems)에서 엔지니어로 근무하는 동안에는 자바 SE 품질 엔지니어링 팀의 아키텍터로, 테스트 자동화 도구와 AWT 로봇 클래스를 연구했다. 현재 AWT 로봇 클래스는 GUI 테스트 자동화 소프트웨어에 널리 쓰인다. 그리고 오픈 JDK 프로젝트와 JDK-Distors 프로젝트에도 참여했으며, 자바 1.6 버전의 버그를 찾기 위해 자바 개발자 커

펼쳐보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

숭실대학교 미디어학부와 영어영문학부를 복수 전공했다. 현재 NHN 모바일 Ajax 팀에서 UI 개발과 더불어 Ajax 실무 강의를 겸하고 있다. 참여했던 대표적인 프로젝트로는 2008년 네이버 메인 개편, 2009년 네이버 지도 개편, 2010년 거리 뷰 프로젝트가 있으며, 2011년 초에는 일본으로 건너가 네이버 재팬 서비스를 지원하기도 했다. 지금은 HTML5 게임을 만들고 있으며, 자바스크립트로 할 수 있는 모든 것에 관심이 많다. 특히 타이타늄 앱 개발과 윈도우 8 앱 개발에도 관심이 많다. 공동 저작한 저서로 [자바스크립트 UI 개발과 Jindo 프레임워크](2011년)가 있고,

펼쳐보기

이 상품의 시리즈

acorn+PACKT 시리즈(총 351권 / 현재구매 가능도서 322권)

펼쳐보기

이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

    리뷰

    0.0 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    0.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용