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

프로페셔널 Node.js 한 권으로 끝내는 노드제이에스 프로그래밍

위키북스 오픈소스 웹 시리즈 48
페드로 테세이라 지음 | 유윤선 옮김 | 위키북스 | 2013년 03월 28일 출간

이 책의 다른 상품 정보

  • 정가 : 30,000원
    판매가 : 27,000 [10%↓ 3,000원 할인]
  • 통합포인트 :
    [기본적립] 1,500원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 도서상태 : 절판

이 책의 이벤트 해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

  • MANNING, O'REILLY, PACKT, WILE..
    2016.03.07 ~ 2021.12.31
상품상세정보
ISBN 9788998139155(8998139154)
쪽수 492쪽
크기 188 * 240 * 23 mm /940g 판형알림
원서명/저자명 Professional Node.js : building Javascript based scalable software./Teixeira, Pedro

책소개

이 책이 속한 분야

Node.js를 이용해 자바스크립트로 확장 가능한 소프트웨어를 개발하자!

한 권으로 끝내는 노드제이에스 프로그래밍 『프로페셔널 Node.js』. 노드의 설치부터 시작해 노드의 비동기적 프로그래밍 모델의 주요 원리를 살펴보고, 모듈 로딩, 바이너리 데이터 조작, 이벤트 이미터 패턴 활용법과 같은 핵심 API를 소개한다. 아울러, 개발한 서버를 테스트하는 데 도움이 되는 툴과 모범 기법도 소개하고, 노드를 통한 웹 애플리케이션 및 Socket.IO를 활용한 실시간 애플리케이션 개발 방법, MySQL 및 NoSQL 데이터베이스와의 연동법에 대해서도 다룬다.

목차

[1부] 소개 및 설정

▣ 01장_ 노드 설치


윈도우에서의 노드 설치
맥 OS X에서의 설치
소스코드를 활용한 노드 설치
- 노드 버전의 선택
- 노드 소스코드 내려받기
- 노드 빌드
- 노드 설치
- 노드 실행
노드 패키지 매니저의 설정 및 활용
- NPM을 활용한 패키지 설치, 업데이트, 제거
정리

▣ 02장_ 노드 소개

이벤트 주도 프로그래밍 방식의 이해
노드와 자바스크립트에서 비동기적 애플리케이션 개발이 쉬운 이유
- 클로저란?
- 클로저가 비동기적 프로그래밍에 도움되는 이유
정리

[2부] 노드 핵심 API

▣ 03장_ 모듈 로딩


노드가 모듈을 로드하는 방식
모듈 내보내기
- 모듈의 로딩
정리

▣ 04장_ 바이너리 데이터의 조작, 인코딩, 디코딩을 위한 버퍼 활용

버퍼의 생성
버퍼의 바이트 가져오기 및 설정
버퍼 잘라내기
버퍼 복사
버퍼 디코딩
정리

▣ 05장_ 이벤트 이미터 패턴을 활용한 이벤트 바인딩 단순화

표준 콜백 패턴의 이해
이벤트 이미터 패턴의 이해
이벤트 타입의 이해
이벤트 이미터 API의 활용
- .addListener() 또는 .on()을 활용한 콜백 바인딩
- 여러 이벤트 리스너의 바인딩
- .removeListener()를 활용한 이벤트 이미터의 이벤트 리스너 제거
- .once()를 통한 일회용 콜백 등록
- .removeAllListeners()를 활용한 모든 이벤트 리스너 제거
커스텀 이벤트 이미터의 개발
- Node 이벤트 이미터의 상속
- 이벤트 내보내기
정리

▣ 06장_ 타이머를 활용한 함수 호출 예약

SETTIMEOUT을 활용한 함수의 실행 지연
CLEARTIMEOUT을 활용한 함수의 실행 취소
함수의 반복 실행 예약 및 취소
PROCESS.NEXTTICK을 활용해 다음 이벤트 루프 반복까지 함수 실행 연기하기
이벤트 루프 블로킹
이벤트 루프 빠져나가기
SETINTERVAL 대신 SETTIMEOUT을 활용한 직렬화 강제 적용
정리

[3부] 파일, 프로세스, 스트림, 네트워크 통신

▣ 07장_ 파일 조회, 읽기, 쓰기


파일 경로의 조작
- 경로 정규화
- 경로 결합
- 경로 해석
- 두 절대 경로 사이에서 상대 경로 찾기
- 경로 구성 요소의 추출
- 경로의 존재 여부 판단
FS 모듈의 소개
- 파일 통계 정보 조회
파일 열기
파일 읽기
- 파일에 쓰기
- 파일 닫기
정리

▣ 08장_ 외부 프로세스의 생성 및 제어

외부 명령의 실행
자식 프로세스의 실행
- 자식 프로세스의 생성
- 자식 프로세스의 데이터 수신
- 자식 프로세스로의 데이터 전송
- 자식 프로세스 종료 시 알림 수신
신호 전달 및 프로세스 죽이기
정리

▣ 09장_ 데이터 스트림 읽기와 쓰기

읽기 가능 스트림의 활용
- 데이터 기다리기
- 스트림의 일시 정지 및 재개
- 스트림이 끝나는 시점의 판단
쓰기 가능 스트림의 활용
- 스트림에 데이터 쓰기
- 스트림의 드레인 시점 기다리기
복잡한 스트림 예제에 대한 고려
- 파일 시스템 스트림의 생성
- 네트워크 스트림의 이해
느린 클라이언트 문제를 피하고 서버 구하기
- 느린 클라이언트 문제의 이해
- 느린 클라이언트 문제의 해결
- stream.pipe()를 활용한 느린 클라이언트 문제 예방 및 읽기 가능 스트림과 쓰기 가능 스트림의 파이핑
정리

▣ 10장_ TCP 서버의 개발

TCP 서버의 생성
- Socket- 객체의 활용
- 유휴 소켓의 이해
- Keep-Alive 설정
- 지연 시간의 활용 또는 미사용
- 클라이언트 커넥션 리스닝
- 서버 닫기
- 에러 처리
간단한 TCP 채팅 서버의 개발
- 커넥션 수신
- 커넥션으로부터 데이터 읽기
- 모든 클라이언트 수집
- 데이터 전달
- 닫힌 커넥션의 제거
- TCP 채팅 서버 활용법
정리

▣ 11장_ HTTP 서버의 개발

HTTP.SERVERREQUEST 객체의 이해
HTTP.SERVERRESPONSE- 객체의 이해
- 헤더 쓰기
- 헤더의 변경 또는 설정
- 헤더의 제거
- 응답 바디 쓰기
HTTP 청크 응답 스트리밍
- 파일 파이핑
- 다른 프로세스의 출력 파이핑
서버 닫기
예제- 1:정적 파일을 제공하는 서버 개발
예제 2: HTTP 청크 응답과 타이머의 활용
정리

▣ 12장_ TCP 클라이언트의 개발

서버 연결
데이터의 전송 및 수신
커넥션 종료
에러 처리
명령행 TCP 클라이언트 예제의 개발
- 서버 연결
- 서버로의 명령행 데이터 전송
- 서버 메시지의 출력
- 커넥션이 끊길 때의 재연결
- 커넥션 닫기
- 클라이언트 한데 정리하기
정리

▣ 13장_ HTTP 요청의 수행

GET 요청하기
다른 HTTP 동사의 활용
- 응답 객체의 검사
- 응답 본문 가져오기
- 응답 본문 스트리밍
HTTP.AGENT를 활용한 소켓 풀링
서드파티 요청 모듈을 활용한 HTTP 요청 단순화
- request 모듈의 설치 및 사용
- 테스트 서버의 생성
- 리다이렉트 따르기
- 요청 옵션의 설정
- 요청 본문 인코딩
- 스트리밍
- 쿠키 보관함의 활용
정리

▣ 14장_ 데이터그램의 활용

UDP의 이해
UDP의 활용법 이해
데이터그램 서버의 개발
- 메시지 리스닝
- 서버 테스트
- 추가 메시지 정보의 검사
간단한 데이터그램 에코 서버의 개발
- 메시지 기다리기
- 전송자에게 메시지 재전송
- 에코 서버 정리
데이터그램 클라이언트의 개발
- 클라이언트의 개발
- 메시지 전송
- 소켓 닫기
간단한 데이터그램 명령행 클라이언트의 개발
- 명령행에서 읽기
- 서버로 데이터 보내기
- 서버로부터 데이터 받기
- 명령행 UDP 클라이언트 정리
데이터그램 멀티캐스트의 이해와 활용
- 멀티캐스트 메시지의 수신
- 멀티캐스트 메시지의 전송
- 데이터그램의 최대 크기
정리

▣ 15장_ TLS/SSL을 통한 TCP 서버 보호

개인 키와 공개 키의 이해
- 개인 키의 생성
- 공개 키의 생성
TLS 서버의 개발
- 서버 초기화
- 커넥션 리스닝
- 클라이언트로부터 데이터 읽기
- 클라이언트로 데이터 보내기
- 접속 종료
TLS 클라이언트의 개발
- 클라이언트 초기화
- 서버 접속
- 서버 인증서의 확인
- 서버로 데이터 보내기
- 서버로부터 데이터 읽기
- 접속 종료
예제 개발
- TLS 채팅 서버의 개발
- TLS 명령행 채팅 클라이언트의 개발
- 클라이언트 인증서의 확인
정리

▣ 16장_ HTTPS를 통한 HTTP 서버 보호

보안 HTTP 서버의 개발
- 서버 옵션의 설정
- 커넥션 리스닝
- HTTPS 클라이언트 인증서의 유효성 검증
HTTPS 클라이언트의 개발
- 클라이언트 초기화
- 요청 보내기
- HTTPS 서버 인증서의 검증
정리

[4부] 모듈 및 애플리케이션 개발과 디버깅

▣ 17장_ 모듈 및 애플리케이션 테스트


테스트 러너의 활용
- 테스트 작성
- 테스트 실행
ASSERTION 테스트 모듈의 활용
- assert 모듈의 활용
- 노드탭의 내장 Assertion 함수 활용
비동기적 모듈의 테스트
정리

▣ 18장_ 모듈 및 애플리케이션 디버깅

CONSOLE.LOG의 활용
노드의 내장 디버거 활용
노드 인스펙터의 활용
정리

▣ 19장_ 콜백 흐름의 제어

부메랑 효과의 이해
함수 선언을 통한 부메랑 효과 방지
비동기 흐름 제어 라이브러리의 활용
- 연속 실행
- 병렬 실행
- 캐스케이딩
- 큐
- 순회
- 매핑
- 리듀싱
- 필터링
- 감지
정리

[5부] 웹 애플리케이션 개발

▣ 20장_ HTTP 미들웨어의 개발 및 활용


커넥트 HTTP 미들웨어 프레임워크의 이해
커스텀 HTTP 미들웨어의 개발
- 비동기적 미들웨어의 개발
- 미들웨어 내에서의 콜백 등록
- 미들웨어 내에서의 에러 처리
커넥트의 내장 HTTP 미들웨어 활용
- 요청 로깅
- 에러 처리
- 정적 파일 서비스
- 쿼리 문자열 파싱
- 요청 본문의 파싱
- 쿠키 파싱
- 세션의 활용
- 다른 미들웨어
정리

▣ 21장_ Express.js를 활용한 웹 애플리케이션 개발

EXPRESS.JS 애플리케이션의 초기화
애플리케이션의 미들웨어 설정
요청 라우팅
- 요청 처리
- 세션 활용
- 라우트 미들웨어의 활용
정리

▣ 22장_ Socket.IO를 활용한 실시간 애플리케이션 개발

웹소켓의 동작 원리 이해
SOCKET.IO를 활용한 웹소켓 애플리케이션 개발
- 서버에서의 Socket.IO 설치 및 실행
- Socket.IO를 활용한 실시간 웹 채팅 개발
- 채팅 애플리케이션의 확장
- 접속 중단 감지
- 사용자 채팅방 분리
- 네임스페이스의 활용
- 레디스를 활용한 서버사이드 애플리케이션 배포
정리

[6부] 데이터베이스 연결

▣ 23장_ node-mysql을 활용한 MySQL 연결


라이브러리를 활용한 MySQL 데이터베이스 연결 및 통신
보안을 염두에 둔 데이터 추가
효과적인 데이터 조회
정리

▣ 24장_ 나노를 활용한 카우치디비 연결

나노 모듈의 설치
데이터베이스 연결 및 생성
도큐먼트 저장
카우치디비 뷰의 생성 및 활용
카우치디비 도큐먼트의 파일 첨부
정리

▣ 25장_ 몽구스를 활용한 몽고디비 연결

몽구스의 설치
몽구스가 모델을 활용해 데이터베이스 접근을 캡슐화하는 원리의 이해
몽고디비 연결
스키마 정의
모델 정의
- 밸리데이터 활용
- 수정자의 활용
- 게터의 활용
- 가상 어트리뷰트의 활용
- 기본값의 활용
- 인덱스의 정의
- DB Ref를 활용한 다른 도큐먼트 참조
- 인스턴스 메서드의 정의
- 스태틱 메서드의 정의
정리

출판사 서평

《프로페셔널 Node.js》에서는 노드의 설치부터 시작해 노드의 비동기적 프로그래밍 모델의 주요 원리를 살펴보고, 모듈 로딩, 바이너리 데이터 조작, 이벤트 이미터 패턴 활용법과 같은 핵심 API를 소개한다. 또 파일, 프로세스, 스트림, 네트워크 통신에 대한 자세한 설명과 풍부한 예제를 통해 독자들이 노드로 서버를 구현하는 데 꼭 필요한 지식(파일 처리, 프로세스의 생성 및 제어, 스트림 읽기/쓰기, TCP 서버 및 HTTP 서버의 생성 및 활용 등)을 익힐 수 있게 도와준다. 아울러 개발한 서버를 테스트하는 데 도움되는 툴과 모... 더보기

Klover 리뷰 (0)

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

도서 구매 후 리뷰를 작성하시면
결제 90일 이내 300원, 발송 후 5일 이내 400원, 이 상품의 첫 리뷰 500원의 포인트를 드립니다.

포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
북로그 리뷰는 본인인증을 거친 회원만 작성 가능합니다.
(※ 외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외) 안내
  • 해당도서의 리뷰가 없습니다.

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

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

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

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

이 책의 원서

안내

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품