본문내용 바로가기
무료배송 이벤트 소득공제

Node.js 인 액션 베테랑 개발자가 전하는 노드제이에스 완벽 활용법

위키북스 오픈소스 & 웹 시리즈 64
  • 정가 : 35,000원
    판매가 : 31,500 [10%↓ 3,500원 할인]
  • 혜택 :
    [기본적립] 1750원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2,000원 추가적립 안내 [회원혜택] 회원 등급 별, 3만원 이상 구매 시 2~4% 추가적립 안내 [리뷰적립] 리뷰 작성 시 e교환권 최대 300원 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 도서상태 : 절판

이 책의 이벤트

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
  • MANNING, O'REILLY, PACKT, WILE..
    2016.03.07 ~ 2022.12.31
상품상세정보
ISBN 9788998139636(8998139634)
쪽수 516쪽
크기 188 * 240 * 35 mm /1098g 판형알림
이 책의 원서/번역서 Node.js in Action / Mike Cantelon

책소개

이 책이 속한 분야

『Node.js 인 액션』은 제품으로 출시할 수 있을 정도의 수준으로 애플리케이션을 만드는 방법을 알려주는 책이다. 핵심 개념에 대한 명쾌한 소개, 다양한 예제로 설치부터 배포까지 모든 과정을 다루고 비동기 프로그래밍, 데이터 저장, 템플릿 출력에 대해 살펴본다.

목차

[1부] 노드의 기반 기술

· 01장: 노드에 오신 것을 환영합니다
_1.1 자바스크립트 기반
_1.2 비동기와 이벤트: 브라우저
_1.3 비동기와 이벤트: 서버
_1.4 DIRTy 애플리케이션
_1.5 DIRTy의 기본 요소
__1.5.1 간단한 비동기 예제
__1.5.2 Hello World HTTP 서버
__1.5.3 스트리밍 데이터
_1.6 요약

· 02장: 다중 채팅방 애플리케이션 만들기
_2.1 애플리케이션 개요
_2.2 애플리케이션 요구사항과 초기 설정
__2.2.1 HTTP와 웹소켓 서비스
__2.2.2 애플리케이션의 파일 구조 생성
__2.2.3 의존성 모듈 명시
__2.2.4 의존성 모듈 설치
_2.3 HTML, CSS, 클라이언트 측 자바스크립트 서비스
__2.3.1 기본적인 정적 파일 서버 생성
__2.3.2 HTML과 CSS 파일 추가
_2.4 SocketIO를 이용한 채팅 관련 메시지 처리
__2.4.1 SocketIO 서버 구성
__2.4.2 애플리케이션 시나리오와 이벤트 처리
_2.5 애플리케이션의 사용자 인터페이스를 위한 클라이언트 측 자바스크립트
__2.5.1 메시지와 닉네임/채팅방 변경 요청을 서버로 전달
__2.5.2 메시지 및 입장할 수 있는 채팅방 목록을 사용자 인터페이스에 보여주기
_2.6 요약

· 03장: 노드프로그래밍의 기본
_3.1 노드의 기능 관리와 재사용
__3.1.1 모듈 생성
__3.1.2 moduleexports를 이용해 잘 정비된 모듈 생성하기
__3.1.3 node_modules 디렉터리로 모듈 재사용하기
__3.1.4 알아둘 점
_3.2 비동기 프로그래밍 기법
__3.2.1 일회성 이벤트를 콜백으로 처리하기
__3.2.2 반복적인 이벤트를 이벤트 발생자로 처리하기
__3.2.3 비동기 개발의 어려운 점
_3.3 비동기 로직의 순서 배열하기
__3.3.1 직렬 흐름 제어를 사용하는 경우
__3.3.2 직렬 흐름 제어 구현하기
__3.3.3 병렬 흐름 제어 구현
__3.3.4 커뮤니티 도구 활용하기
_3.4 요약

[2부] 노드를 이용한 웹 애플리케이션 개발

· 04장: 노드 웹 애플리케이션 만들기
_4.1 HTTP 서버의 기본
__4.1.1 노드가 HTTP 요청을 개발자에게 전달하는 방법
__4.1.2 “Hello World”로 응답하는 기본적인 HTTP 서버
__4.1.3 요청 헤더 읽기와 응답 헤더 설정하기
__4.1.4 HTTP 응답 상태 코드 설정하기
_4.2 RESTful 웹 서비스 만들기
__4.2.1 POST 요청으로 자원 생성하기
__4.2.2 GET 요청으로 자원 가져오기
__4.2.3 DELETE 요청으로 자원 삭제하기
_4.3. 정적 파일 서비스하기
__4.3.1 정적 파일 서버 만들기
__4.3.2 서버 오류 처리하기
__4.3.3 fsstat을 이용한 선제 오류 처리
_4.4 폼에서 사용자 입력받기
__4.4.1 제출된 폼 항목 처리하기
__4.4.2 formidable을 이용한 파일 업로드 처리하기
__4.4.3 업로드 진행 상황 계산하기
_4.5 HTTPS를 이용한 애플리케이션 보안
_4.6 요약

· 05장: 노드 애플리케이션 데이터 저장하기
_5.1 서버가 없는 데이터 저장소
__5.1.1 인메모리 저장소
__5.1.2 파일 기반 저장소
_5.2 관계형 데이터베이스 관리 시스템
__5.2.1 MySQL
__5.2.2 PostgreSQL
_5.3 NoSQL 데이터베이스
__5.3.1 레디스
__5.3.2 몽고디비
__5.3.3 몽구스
_5.4 요약

· 06장: 커넥트
_6.1 커넥트 애플리케이션 준비
_6.2 커넥트 미들웨어의 동작방식
__6.2.1 로그를 남기는 커넥트 미들웨어
__6.2.2. “hello world”로 응답하는 미들웨어
_6.3 미들웨어 순서의 중요성
__6.3.1 미들웨어가 next ( )를 호출하지 않을 때
__6.3.2 미들웨어 순서를 사용해 인증하기
_6.4 미들웨어와 서버 마운팅
__6.4.1 인증 미들웨어
__6.4.2 관리영역을 보여주는 미들웨어 컴포넌트
_6.5 설정 가능한 미들웨어 만들기
__6.5.1 설정 가능한 logger 미들웨어 컴포넌트 만들기
__6.5.2 router 미들웨어 컴포넌트 만들기
__6.5.3 URL을 다시 만드는 미들웨어 컴포넌트
_6.6 에러 핸들링 미들웨어 사용
__6.6.1 커넥트의 기본 에러 핸들러
__6.6.2 애플리케이션 에러 직접 다루기
__6.6.3 다수의 에러 핸들링 미들웨어 컴포넌트 사용
_6.7 요약

· 07장: 커넥트의 내장 미들웨어
_7.1 쿠키와 요청 본문, 쿼리 스트링을 해석하는 미들웨어
__7.1.1 cookieParser ( ): HTTP 쿠키 해석
__7.1.2 bodyParser ( ): 요청 본문 해석
__7.1.3 limit ( ): 요청 본문의 크기 제한
__7.1.4 query ( ): 쿼리 스트링 파서
_7.2 핵심 웹 애플리케이션 기능을 실행하는 미들웨어
__7.2.1 logger ( ): 요청 로그 남기기
__7.2.2 favicon ( ): 파비콘 서비스
__7.2.3 methodOverride ( ): 위조 HTTP 메서드
__7.2.4 vhost(): 가상 호스트
__7.2.5 session ( ): 세션 관리
_7.3 웹 애플리케이션의 보안을 다루는 미들웨어
__7.3.1 basicAuth ( ): HTTP 기본 인증
__7.3.2 csrf ( ): 사이트 간 요청 위조 방어
__7.3.3 errorHandler ( ): 개발 에러 핸들링
_7.4 정적 파일 서비스 미들웨어
__7.4.1 static ( ): 정적 파일 서비스
__7.4.2 compress ( ): 정적 파일 압축
__7.4.3 directory ( ): 디렉터리 목록
_7.5 요약

· 08장: 익스프레스
_8.1 애플리케이션의 뼈대 만들기
__8.1.1 익스프레스가 실행되게 설치하기
__8.1.2 애플리케이션 생성하기
__8.1.3 애플리케이션 둘러보기
_8.2 익스프레스 및 애플리케이션 설정하기
__8.2.1 환경 기반 설정
_8.3 뷰 렌더링
__8.3.1 뷰 시스템 설정
__8.3.2 뷰 찾기
__8.3.3 뷰에 데이터 노출하기
_8.4 폼과 파일 업로드를 다루는 방법
__8.4.1 사진의 데이터 모델 구현하기
__8.4.2 사진 업로드 폼 생성하기
__8.4.3 업로드한 사진 목록 보여주기
_8.5 자원 내려받기 다루기
__8.5.1 사진 내려받을 경로 생성하기
__8.5.2 사진 내려받을 경로 구현하기
_8.6 요약

· 09장: 고급 익스프레스
_9.1 사용자 인증하기
__9.1.1 사용자를 저장하고 불러오기
__9.1.2 새로운 사용자 등록하기
__9.1.3 등록된 사용자 로그인
__9.1.4 사용자 정보를 불러오는 미들웨어
_9.2 고급 라우팅 기술
__9.2.1 사용자가 제출한 데이터 검증
__9.2.2 경로에 특화된 미들웨어
__9.2.3 페이징 구현
_9.3 공개 REST API 생성하기
__9.3.1 API 설계하기
__9.3.2 기본 인증 추가하기
__9.3.3 라우팅 구현하기
__9.3.4 내용 협상 기능
_9.4 에러 다루기
__9.4.1 404 에러 다루기
__9.4.2 에러 다루기
_9.5 요약

· 10장: 노드 애플리케이션 테스트
_10.1 단위 테스트
__10.1.1 assert 모듈
__10.1.2 노드 유닛
__10.1.3 모카
__10.1.4 보우즈
__10.1.5 shouldjs
_10.2 인수 테스트
__10.2.1 토비
__10.2.2 소다
_10.3 요약

· 11장: 웹 애플리케이션 템플릿
_11.1 템플릿으로 코드 깔끔하게 유지하기
__11.1.1 템플릿 사용하기
_11.2 임베디드 자바스크립트 템플릿
__11.2.1 템플릿 생성하기
__11.2.2 EJS 필터로 템플릿 데이터 변경하기
__11.2.3 애플리케이션에 EJS 통합하기
__11.2.4 클라이언트 측 애플리케이션에서 EJS 사용하기
_11.3 호간으로 머스태쉬 템플릿 언어 사용하기
__11.3.1 템플릿 생성하기
__11.3.2 머스태쉬 태그
__11.3.3 호간 세부 조정하기
_11.4 제이드 템플릿
__11.4.1 제이드 기초
__11.4.2 제이드 템플릿의 로직
__11.4.3 제이드 템플릿 구성하기
_11.5 요약

[3부] 노드로 할 수 있는 더 많은 것들

· 12장: 노드 애플리케이션의 배포와 가동시간 관리
_12.1 노드 애플리케이션 호스팅
__12.1.1 전용 서버와 가상 사설 서버
__12.1.2 클라우드 호스팅
_12.2 간단한 배포
__12.2.1 깃 저장소에서 배포
__12.2.2 노드 실행 유지
_12.3 서버 가동 시간과 성능의 최대화
__12.3.1 Upstart로 가동 시간 관리
__12.3.2 클러스터 API: 다중 코어의 장점 활용
__12.3.3 정적 파일 서비스와 프록시
_12.4 요약

· 13장: 웹 서버 이외의 것들
_13.1 SocketIO
__13.1.1 간단한 SocketIO 애플리케이션 만들기
__13.1.2 SocketIO를 사용한 페이지 동작과 CSS 리로드
__13.1.3 SocketIO의 또 다른 사용법
_13.2 TCP/IP 네트워크
__13.2.1 버퍼와 바이너리 데이터 사용
__13.2.2 TCP 서버 생성
__13.2.3 TCP 클라이언트 생성
_13.3 운영체제와 상호작용하는 데 필요한 도구
__13.3.1 process 전역 싱글톤
__13.3.2 파일 시스템 모듈 사용
__13.3.3 외부 프로세스 생성
_13.4 개발 명령행 도구
__13.4.1 명령행 인자 해석
__13.4.2 표준 입력과 표준 출력 처리
__13.4.3 색상이 들어간 결과 추가
_13.5 요약

· 14장: 노드 생태계
_14.1 노드 개발자를 위한 온라인 자원
__14.1.1 노드와 모듈 레퍼런스
__14.1.2 구글 그룹스
_14.1.3 IRC
__14.1.4 깃허브 이슈
_14.2 깃허브
__14.2.1 깃허브 시작하기
__14.2.2 깃허브에 프로젝트 추가하기
__14.2.3 깃허브에서 함께 개발하기
_14.3 npm 저장소에 기여하기
__14.3.1 패키지 준비
__14.3.2 패키지 명세 작성하기
__14.3.3 패키지 테스트 및 배포
_14.4 요약

· 부록A: 노드 및 커뮤니티 부가 프로그램 설치하기
_A.1 맥 OS X에서 설치하기
_A.1.1 Homebrew로 설치하기
_A.2 윈도우에서 설치하기
_A.3 리눅스에서 설치하기
__A.3.1 우분투에 설치할 때 필요한 패키지
__A.3.2 CentOS에 설치 시 필요한 패키지
_A.4 노드 컴파일하기
_A.5 노드 패키지 매니저 사용하기
__A.5.1 패키지 검색하기
__A.5.2 패키지 설치하기
__A.5.3 문서와 패키지 코드 찾아보기

· 부록B: 노드 디버깅
_B.1 JSHint로 코드 분석하기
_B.2 디버깅 정보 출력하기
__B.2.1 console 모듈로 디버깅하기
__B.2.2 디버깅 출력을 관리하는 디버그 모듈 사용하기
_B.3 노드의 내장 디버거
__B.3.1 디버거 네비게이션
__B.3.2 디버거로 상태 확인 및 조작하기
_B.4 노드 인스펙터
__B.4.1 노드 인스펙터 시작하기
__B.4.2 노드 인스펙터 네비게이션
__B.4.3 노드 인스펙터에서 상태 둘러보기

· 부록C: 익스프레스 확장 및 설정하기
_C.1 익스프레스 확장하기
__C.1.1 템플릿 엔진 등록하기
__C.1.2 consolidatejs로 템플릿 작성하기
__C.1.3 익스프레스 확장 및 프레임워크
_C.2 고급 설정
__C.2.1 JSON 응답 조작하기
__C.2.2 JSON 응답 포맷 만들기
_C.2.3 역방향 프록시 헤더 필드 신뢰하기

책 속으로

노드에 관한 책을 쓰는 것은 매우 도전적인 과제다. 노드는 비교적 최신 플랫폼이며 이제서야 막 안정화되기 시작했다. 노드의 핵심부는 나날이 발전하고 있으며 사용자 제작 모듈과 관련된 커뮤니티는 그 누구도 따라잡을 수 없을 만큼의 속도로 폭발적인 증가세를 보이고 있다. 노드 커뮤니티는 여전히 그 정체성을 찾아가고 있다. 이러한 역동적인 대상을 책에 담기 위한 유일한 방법은 노드의 본질은 무엇이며 어떻게 성공의 길을 걸어왔는지 다루는 것이다. 여기 그 일을 해낸 노드의 베테랑들이 있다. 마이크 켄탤론은 노드 커뮤니티에서 노드에 관한 실... 더보기

출판사 서평

서버에서 자바스크립트를 사용한다!

노드는 확장성 있고 고성능인 웹 애플리케이션을 지원할 수 있는 자바스크립트 서버다. 비동기 I/O를 사용해 동시에 하나 이상의 작업을 실행할 수 있는데, 이 특징은 채팅이나 게임, 실시간 통계와 같은 실시간 애플리케이션에서 필수적인 요건이다. 또한 노드가 자바스크립트이므로 백엔드부터 프론트엔드까지 같은 언어를 사용할 수 있다.

『Node.js 인 액션』은 제품으로 출시할 수 있을 정도의 수준으로 애플리케이션을 만드는 방법을 알려준다. 자바스크립트에 대한 기본적인 지식은 필요하지만 노... 더보기

Klover 리뷰 (0)

북로그 리뷰 (0) 쓰러가기

북로그 리뷰는 본인 인증 후 작성 가능합니다.
책이나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 내용은 비공개 처리 될 수 있습니다.
※ 북로그 리뷰 리워드 제공 2021. 4. 1 종료

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매 후 문장수집 작성 시, 리워드를 제공합니다. 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 책의 원서/번역서

안내
바로가기
  • 우측 확장형 배너 2
  • 우측 확장형 배너 2
최근 본 상품