본문 바로가기

추천 검색어

실시간 인기 검색어

Node.Js 노드제이에스 프로그래밍

에이콘 웹 프로페셔널 시리즈 43
변정훈 저자(글)
에이콘출판 · 2012년 02월 17일
10.0 (1개의 리뷰)
(null%의 구매자)
  • Node.Js 노드제이에스 프로그래밍 대표 이미지
    Node.Js 노드제이에스 프로그래밍 대표 이미지
  • A4
    사이즈 비교
    210x297
    Node.Js 노드제이에스 프로그래밍 사이즈 비교 188x235
    단위 : mm
무료배송 이벤트 소득공제
10% 25,200 28,000
적립/혜택
1,400P

기본적립

5% 적립 1,400P

추가적립

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 1,400P
  • 리뷰 작성 시, e교환권 추가 최대 300원
배송안내
무료배송
배송비 안내
국내도서/외국도서
도서만 15,000원 이상 구매 시 무료배송
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송

15,000원 미만 시 2,500원 배송비 부과

교보Only(교보배송)
각각 구매하거나 함께 20,000원 이상 구매 시 무료배송

20,000원 미만 시 2,500원 배송비 부과

해외주문 서양도서/해외주문 일본도서(교보배송)
각각 구매하거나 함께 15,000원 이상 구매 시 무료배송

15,000원 미만 시 2,500원 배송비 부과

업체배송 상품(전집, GIFT, 음반/DVD 등)
해당 상품 상세페이지 "배송비" 참고 (업체 별/판매자 별 무료배송 기준 다름)
바로드림 오늘배송
업체에서 별도 배송하여 1Box당 배송비 2,500원 부과

1Box 기준 : 도서 10권

그 외 무료배송 기준
바로드림, eBook 상품을 주문한 경우, 플래티넘/골드/실버회원 무료배송쿠폰 이용하여 주문한 경우, 무료배송 등록 상품을 주문한 경우
주문정보를 불러오는 중입니다.
서울시 종로구 종로 1

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

패키지

북카드

키워드 Pick

키워드 Pick 안내

관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

『Node.Js 노드제이에스 프로그래밍』은 노드 프로그래밍의 입문서로서, 기본 개념부터 실무에 필요한 핵심 내용까지 폭넓게 다룸으로써 노드 프로그래밍을 쉽게 배워 다양하게 활용할 수 있도록 상세히 설명한다. 본문은 Node.js를 이해하기 위한 단계적인 설명과 예제 중심의 이해하기 쉬운 설명으로 구성되어 있다. 또한 Node.js 프로그래밍에서 필요한 필수 사항에 대한 폭넓은 내용을 다루며, 실무에 필요한 핵심 내용 위주의 학습으로 구성하였다.

작가정보

저자(글) 변정훈

저자 변정훈은 온라인에서 아웃사이더(Outsider)라는 닉네임을 사용하고 서버사이드 개발자로 일하면서 프론트엔드쪽 기술에도 관심이 많다. 최신 기술이나 기술 트렌드에 관심이 많으며, 현재 NHN 비즈니스 플랫폼에서 자바 개발자로 일한다. 개발자 커뮤니티인 봄싹과 프론트엔드 개발자 커뮤니티인 FRENDS에서 주로 활동 중이며, Outsider’s Dev Story라는 블로그를 통해 프로그래밍을 하면서 배운 지식들을 공유하고 있다.

목차

  • 1장 노드 소개
    ___1.1 노드는 서버사이드 자바스크립트다
    ___1.2 CommonJS
    ___1.3 노드의 역사와 발전
    ___1.4 노드의 탄생 배경
    ______문화적인 이유
    ______인프라적인 이유
    ___1.5 노드의 특징
    ______이벤트 루프 기반의 비동기 I/O
    ______싱글 스레드
    ______자바스크립트
    ______넌블록킹 I/O
    ___1.6 정리

    2장 노드 프로그래밍 시작
    ___2.1 설치
    ______윈도우에서의 설치
    ______맥OS에서의 설치
    ______리눅스에서의 설치
    ______여러 버전의 노드 동시 사용
    ___2.2 REPL
    ___2.3 Hello World
    ___2.4 require()와 module.exports
    ___2.5 파일 읽기 예제
    ___2.6 Web Server 예제
    ___2.7 노드의 아키텍처
    ___2.8 노드 코딩 관례
    ___2.9 정리

    3장 노드의 기본 모듈
    ___3.1 전역 객체
    ___3.2 유틸리티
    ___3.3 이벤트
    ___3.4 버퍼
    ___3.5 스트림
    ___3.6 파일시스템
    ___3.7 경로
    ___3.8 네트워크
    ___3.9 HTTP와 HTTPS
    ___3.10 URL과 쿼리 문자열
    ___3.11 자식 프로세스
    ___3.12 클러스터
    ___3.13 TCP를 이용한 채팅 예제
    ___3.14 정리

    4장 npm을 이용한 의존성 확장 모듈 관리
    ___4.1 npm 소개
    ___4.2 npm 설치
    ___4.3 npm을 이용한 확장 모듈 설치
    ______글로벌 설치
    ______로컬 설치
    ___4.4 확장 모듈 검색
    ___4.5 설치된 확장 모듈 관리
    ___4.6 package.json을 이용한 프로젝트 관리
    ___4.7 정리

    5장 트위터 백업 애플리케이션 예제
    ___5.1 restler를 이용한 트위터 REST API 사용
    ___5.2 파일시스템 기본 모듈을 이용한 파일 저장
    ___5.3 백업 스케줄링
    ___5.4 서비스를 위한 노드 애플리케이션 실행
    ______nohup을 이용한 실행
    ______포에버 확장 모듈을 이용한 실행
    ___5.5 정리

    6장 경량 웹 프레임워크 익스프레스
    ___6.1 익스프레스 프로젝트 구성
    ___6.2 app.js 소스 살펴보기
    ___6.3 Jade 뷰 템플릿 엔진
    ___6.4 폼 전송 웹사이트 예제
    ___6.5 데이터베이스 연동
    ______MySQL 확장 모듈: node-mysql
    ______몽고디비 확장 모듈: 몽고리안
    ___6.6 비동기 패턴의 의존성 문제
    ______콜백 함수를 사용한 의존성 제거
    ______이벤트를 사용한 의존성 해결
    ______반복문에서 비동기 작업
    ___6.7 정리

    7장 리얼타임 웹사이트를 위한 Socket.IO
    ___7.1 리얼타임 웹사이트란?
    ___7.2 예제를 위한 웹 서버 구성
    ___7.3 Socket.IO 설정
    ___7.4 Socket.IO 서버 연결
    ___7.5 서버와 클라이언트의 메시지 통신
    ___7.6 커스텀 이벤트
    ___7.7 휘발성 메시지와 브로드캐스트
    ___7.8 네임스페이스
    ___7.9 방 기능
    ___7.10 정리

    8장 익스프레스와 Socket.IO를 이용한 Simple Chat 예제
    ___8.1 simple-chat의 사용자 닉네임 처리
    ___8.2 채팅방 생성
    ___8.3 Socket.IO를 사용한 채팅방 입장
    ___8.4 채팅 기능 구현
    ___8.5 채팅 참가자 관리
    ___8.6 채팅방 나가기
    ___8.7 완성된 simple-chat 코드
    ___8.8 정리

    9장 디버깅
    ___9.1 노드의 스택 트레이스
    ___9.2 로그 메시지를 위한 console 사용
    ___9.3 노드 인스펙터를 이용한 디버깅
    ___9.4 정리

    10장 유닛 테스트
    ___10.1 TDD 프레임워크 익스프레소
    ______노드의 Assert 모듈
    ______익스프레소의 assert 함수
    ______익스프레소의 테스트 실행
    ______웹 애플리케이션 테스트
    ______node-jscoverage로 테스트 커버리지 확인
    ___10.2 BDD 프레임워크 보우즈
    ______보우즈의 테스트 코드 구조
    ______토픽과 보우
    ______보우즈에서 제공하는 assert문
    ______비동기 테스트 작성
    ______테스트 스위트의 실행
    ___10.3 정리

    11장 클라우드 서비스 배포
    ___11.1 VMWare의 클라우드 파운드리
    ______VMC 설치
    ______클라우드 파운드리에 노드 애플리케이션 배포
    ______클라우드 파운드리의 데이터베이스 서비스2
    ______vmc를 통한 클라우드 파운드리 관리
    ___11.2 허로쿠
    ______허로쿠 환경 설정
    ______허로쿠에 배포1
    ______허로쿠 관리2
    ___11.3 조이엔트의 no.de
    ______no.de를 위한 환경 설정
    ______no.de에 애플리케이션 배포
    ______no.de 클라우드 서비스 관리
    ___11.4 정리

    부록 A 프로덕션 레벨의 참고 사이트
    부록 B 노드 학습을 위한 참고 사이트

출판사 서평

서버 환경에서 자바스크립트로 애플리케이션을 작성할 수 있는 Node.js(노드제이에스)는 이벤트 루프와 넌블록킹 I/O를 이용한 뛰어난 성능으로 출시된 지 2년 만에 개발자 커뮤니티에서 큰 인기와 주목을 끌고 있다. 그 동안 Node.js를 공부할 수 있는 한글 자료가 많이 부족했던 상황에서 출간된 이 책 『Node.js 노드제이에스 프로그래밍』은 노드 프로그래밍의 입문서로서, 기본 개념부터 실무에 필요한 핵심 내용까지 폭넓게 다룸으로써 노드 프로그래밍을 쉽게 배워 다양하게 활용할 수 있도록 상세히 설명한다.

초보자를 위한 Node.js 프로그래밍 입문서

자바스크립트로 서버 애플리케이션을 작성할 수 있는 Node.js 프로그래밍을 설명하는 이 책에서는 기본 개념부터 실무에 필요한 핵심 내용까지 두루 다룸으로써 노드 프로그래밍에 입문하는 데 좋은 가이드를 제공한다.

★ 이 책에서 다루는 내용 ★

● Node.js의 특징인 이벤트 루프와 넌블록킹 I/O
● Node.js의 기본 모듈 사용법
● 필수 도구 중 하나인 확장 모듈을 관리해주는 npm의 사용법
● 대표적인 경량 웹 프레임워크 익스프레스
● 리얼타임 웹 애플리케이션을 빠르게 작성할 수 있는 Socket.IO
● 유닛 테스트 프레임워크의 사용 방법과 클라우드 서비스 배포 방법

★ 이 책의 특징 ★

● Node.js를 이해하기 위한 단계적인 설명
● 예제 중심의 이해하기 쉬운 설명
● Node.js 프로그래밍에서 필요한 필수 사항에 대한 폭넓은 내용
● 실무에 필요한 핵심 내용 위주의 학습

★ 소스코드 다운로드 ★

에이콘출판사의 도서정보 페이지 http://www.acornpub.co.kr/book/nodejs에서도 이 책에 나온 예제 코드를 압축한 파일을 다운로드할 수 있다.

이 책은 노드 0.6.6 최신 버전에 맞춰 작성했고 각 모듈의 버전은 설명과 함께 명시했다. 노드가 아직 1.0 버전은 나오지 않았지만, API도 거의 확정됐고 성능과 안정성도 어느 정도 검증됐으므로 사용하는 데 문제가 없다. 노드의 버전업은 상당히 빠르게 진행되지만, 주요 API가 바뀌는 일은 거의 없을 것이다. 이 책의 예제가 새 버전과 맞지 않는다면 버전을 맞춰 사용해보기를 권한다.

★ 추천의 글 ★

지난 몇 년간 저와 같은 평범한 자바 개발자들은 하루가 멀다 하고 새로운 언어와 낯선 기술이 등장해 개발자들의 관심을 끌고 있다는 소식을 들으며 앞으로 주류 기술의 흐름이 어떻게 변할지, 어떤 언어를 익히고 기술을 준비해야 할지 파악하기 쉽지 않아 당황스러웠습니다. 이럴 땐 커뮤니티의 자발적이고 적극적인 참여를 통해 언어와 기술의 한계를 극복하고 발전 중인 기술이 무엇인지 살펴보면 도움이 될 것입니다. 이런 기준으로 볼 때 지금 이 시점에서 가장 주목할 만한 언어는 자바스크립트가 분명합니다. 또 가장 관심을 가져야 할 기술은 노드인 듯합니다.
노드는 이미 오픈소스 커뮤니티는 물론이고 다양한 IT기업의 적극적인 참여와 지원 속에서 빠르게 발전하며 실전에도 속속 적용되고 있습니다. 노드가 강조하는 이벤트 기반 프로그래밍이나 비동기 I/O 방식은 자바 같은 주류 기술에도 상당한 영향을 주고 있습니다. 따라서 당장 노드를 사용할 일이 없더라도 노드를 배우고 익혀둔다면 여러모로 유익할 것입니다. 이러한 분위기가 무르익은 지금 이때에 주류 서버 기술은 물론이고 프론트엔드 개발 기술과 새로운 기술 흐름까지 빠짐없이 꿰고 있는 변정훈 님의 도움으로 노드를 배울 수 있게 되어서 기쁩니다.
- 이일민/Epril 대표, 『토비의 스프링 3』 저자

특정 기술을 주제로 책을 쓰는 사람을 보면 그 기술과 닮았다는 생각이 들곤 한다. 이 책도 그런 책이다. 아대장님(별명이 Outsider라서 지인들이 부르는 호칭)이 책을 쓰기로 했다는 소식을 들었을 때가 작년 한국스프링사용자모임(KSUG) 세미나에서 노드를 발표할 때이니 6월 말 즈음인데, 11월 무렵 마무리에 들어가서 폭넓은 베타리딩까지 끝내고 이렇게 책으로 엮여 나오니 놀랍기만 하다.
미안한 이야기지만 사실 책을 미리 읽어볼 기회가 왔을 때 그리 기대하지 않았다. 집중해서 책 쓰는 모습을 보기는 했어도 그 길지 않은 기간에 좋은 책을 쓰기란 불가능에 가깝기 때문이다. 그런데 목차를 보고는 정말 놀라지 않을 수 없었다. 어떻게 이런 내용의 책을 이렇게 빨리 쓸 수 있는지 이해할 수 없었다. 읽어 보니 입문서로 적절한 깊이를 유지하면서 필요한 내용을 모두 담은 책이었다. 심지어 이 책에서는 테스트와 클라우드 연동 방법까지 다룬다(노드는 클라우드 시대의 PHP라고 난 생각한다).
노드가 바로 그런 기술이다. 2009년 초에 착안해 5월에 깃허브(github)에 저장소가 생겼고 2010년에야 조금씩 알려지기 시작한 프로젝트가 곧 큰 반향을 일으키더니 급격하게 기술 스택이 쌓여 올라가는 모습을 보면 마치 쓰나미가 몰려오는 느낌이다. 심지어 아파치의 Deft나 VMWare의 vert.x 같이 노드의 특징을 따라하는 프로젝트까지 생겼다. 노드가 이처럼 빨리 기술 스택을 쌓아 올릴 수 있었던 이유는 업계가 여러 플랫폼에서 많은 학습을 한 결과가 반영됐기 때문이라고 생각한다. 20여 년의 인터넷과 웹 시대를 거치면서 정말 많은 시도가 있었다. 저자도 다방면에 관심을 보이며 무모하다 싶을 정도로 여러 가지를 열정적으로 학습하는 사람이다. (그의 멋진 블로그가 그 증거다!) 그렇기에 이렇듯 균형 잡힌 책이 단기간에 나올 수 있었던 것이다. 책을 쓴 시간은 짧았을지 모르지만, 책을 준비한 시간은 정말 오래됐고 치열했다고 말할 수 있겠다.
- 박성철/SK플래닛 플랫폼 SW 개발팀 팀장, 한국스프링사용자모임(KSUG) 큰일꾼

2005년 이렇다 할 기초도 없는 상태에서 자바스크립트를 시작했다. 자바스크립트 기술 공유 사이트를 통해 닥치는 대로 소스를 분석해 다양한 자바스크립트 기술을 익히고, 잊지 않기 위해 개인 블로그(http://firejune.com)에 글을 올려온 지도 벌써 7년째 접어들었다. 최근에는 자바스크립트의 영역이 넓어져 웹의 울타리에서 벗어나 네이티브 모바일 애플리케이션을 만들 수도 있고, HTML5 기세를 타 하나의 플랫폼으로 발돋움을 꾀하는가 하면, 마침내 현업에 사용하기에도 부족함이 없는 성능의 서버사이드 프로그래밍까지 아우르게 돼, 그야말로 자바스크립트 개발자로서 행복한 비명을 지르는 나날을 보내기에 바쁘다.
특히 자바스크립트 서버사이드 프로그래밍의 대표 솔루션으로 자리 잡은 Node.js를 현업 프로젝트에 사용하면서 클라이언트 개발자가 맞닥뜨리는 서버 프로그래밍의 개념이나 관련 지식의 부족을 인지하던 터였고, 국내 참고 서적이 부족해 외국 기술 사이트를 참고하거나 소스를 분석해야만 하는 현실에 안타까워하고 있을 무렵, 단비와도 같은 이 책이 출간 된다기에 기꺼이 리뷰에 응했다. 처한 상황이 이렇다 보니 이 리뷰는 큰 의미가 있으리라 생각했고, 그 예상은 적중했다. 수박 겉핥듯 이해했던 노드 관련 모듈, 프레임워크, API에 대한 많은 지식을 얻을 수 있는 초석 역할을 충실히 해줬기 때문이다.
이 책은 자바스크립트 프로그래밍 지식이 있으면서 노드를 활용해 보고자 하는 초보 개발자나 노드에 흥미를 갖고 기초를 다지려는 개발자들에게 강력하게 추천하고 싶은 노드 실전 입문서다.
- 경준호/스파크앤어소시에이츠 과장, http://firejune.com

자바스크립트에 애착하는 개발자의 한 사람으로서 국내 개발자가 저술한 노드 관련 책이 출판됨을 축하드립니다. 아웃사이더 님은 여러 커뮤니티 활동을 통해 국내 개발자와 항상 소통하며 프론트엔드 관련 기술뿐만 아니라 백엔드와 데이터베이스, 아키텍처, 툴 등 다양한 방면에서 폭넓은 지식을 갖춘 개발자입니다. 멈추지 않은 배움의 노력과 열정으로 노드 책을 집필한다는 말을 들었을 때부터 출간되기만을 기다려 해왔는데, 마침내 이렇게 출간된다 하니 기쁜 마음으로 동료 개발자들께 이 책을 권해드립니다.
사용자의 웹브라우저 영역에 관련된 기술에서부터 서버사이드의 다양한 주제를 소화해 넘치는 열정이 아니면 볼 수 없는 내용으로 채워진 이 책은 노드를 알고자 하는 국내 개발자들께 망망한 웹 개발의 바다에서 목적지로 무사히 도착하게 이끌어주는 등불과 같은 역할을 해줄 것입니다.
- 김상영(Aj)/KTH 모바일사업부 웹플랫폼 팀 차장, http://ajaxian.kr/

다양한 개발자 커뮤니티에서 활약하면서 일찍이 수년 전부터 Node.js(이하 노드)의 매력을 발견해 푹 빠져 지내온 저자가 노드 관련 지식을 개발자들과 나누고자 몇 달간의 힘든 과정을 거쳐 드디어 책으로 엮어냈다.
이 책은 노드 전반에 대한 친절한 설명은 물론, 각종 프레임워크, 라이브러리, 클라우드 환경에서의 활용 등 독자를 위해 고민한 흔적을 가득 담고 있다. 그 덕에 책 읽는 과정 하나하나에서 분명 노드를 알아가는 재미를 더해줄 것이다.
새로운 조합의 아이디어로 등장해 놀라운 속도로 자신의 위치를 확보한 노드는 지금도 가장 빠른 속도로 발전하는 개발 플랫폼 중 하나다. 물론 모든 기술이 그렇듯 노드 또한 은총알은 아니다. 하지만 개발자로서 노드를 살펴보고 그 가치를 음미하는 건 분명 의미 있는 일이다. 이 책을 통해 더 많은 이들이 노드가 세운 이정표를 읽고 그 방향을 가늠해보길 기대한다.
- 이동욱/LG CNS 프레임워크 그룹

★ 이 책의 구성 ★

1장, 노드 소개 : 노드는 라이언 달이라는 개발자가 만든 프로젝트다. 노드 프로젝트를 이해하기 위해 라이언이 왜 노드 프로젝트를 시작했는지 살펴보며, 노드의 특성은 어떤 것인지 자세히 살펴본다. 노드가 공개된 이후 많은 개발자가 참여해 활발한 커뮤니티가 만들어지고 하루가 다르게 발전 중이다. 현재 노드의 에코 시스템은 어떻게 이뤄졌으며 노드의 특징은 무엇인지 알아본다.

2장, 노드 프로그래밍 시작 : 노드 프로그래밍을 하기 위해 노드를 설치하는 방법을 알아본다. 그리고 REPL의 사용법과 ‘Hello World’를 출력하는 예제를 작성하면서 노드 사용법을 배운다. 파일 읽기 예제와 웹 서버 예제를 작성하면서 기본 모듈을 사용하는 방법을 살펴보고, 노드의 아키텍처와 함께 동작 방식을 이해한다.

3장, 노드의 기본 모듈 : 노드는 프로세스, 파일시스템, 유틸리티, HTTP 등의 기본 모듈을 제공한다. 노드의 기본 모듈은 노드 프로그래밍의 기반이 되므로 기본 모듈이 제공하는 기능을 이해해야 한다. 각 기본 모듈의 사용법을 살펴보면서 노드에 대한 이해도를 높이고, 네트워크 모듈로 TCP 채팅 애플리케이션을 작성하면서 기본 모듈을 활용하는 방법을 살펴본다.

4장, npm을 이용한 의존성 확장 모듈 관리 : npm은 확장 모듈을 관리하는 패키지 매니저다. 노드에는 기본 모듈 외에 수많은 확장 모듈이 있는데, npm을 사용하면 확장 모듈을 쉽게 설치하고 관리할 수 있다. npm은 최신 버전의 노드에 포함될 만큼 노드 프로그래밍에 필수적인 도구다. 확장 모듈을 제대로 활용하기 위해 npm으로 모듈을 설치하고 프로젝트를 관리하는 방법을 살펴본다.

5장, 트위터 백업 애플리케이션 예제 : REST 기능과 스케줄링 기능이 필요한 트위터 백업 애플리케이션 예제를 작성한다. 모든 기능을 직접 작성하는 대신 REST와 스케줄링 확장 모듈을 npm으로 설치해 사용하면서 npm으로 확장 모듈을 사용하는 방법을 자세히 살펴본다.

6장, 경량 웹 프레임워크 익스프레스 : 익스프레스(express)는 경량 웹 프레임워크로서 사용법이 간단하면서 강력하므로 노드를 대표하는 모듈 중 하나다. 익스프레스를 사용하면 웹사이트나 웹 애플리케이션을 쉽게 작성할 수 있다. 익스프레스의 소스 구조와 사용 방법과 함께 기본 뷰 템플릿 엔진인 제이드의 사용법을 살펴본다.

7장, 리얼타임 웹사이트를 위한 Socket.IO : Socket.IO는 노드의 대표적인 모듈 중 하나로 코멧이나 웹소켓을 이용한 리얼타임 웹을 구현하기 위한 확장 모듈이다. 복잡한 리얼타임 웹 기술에 대한 지식 없이도 쉽게 사용할 수 있어 많은 개발자가 주목하는 모듈이다. Socket.IO의 다양한 기능을 차례대로 살펴보면서 사용법을 익힌다.

8장, 익스프레스와 Socket.IO를 이용한 Simple Chat 예제 : 6장과 7장에서 배운 익스프레스와 Socket.IO를 이용해 채팅 예제를 작성한다. 예제를 작성하면서 두 모듈을 활용하는 방법을 다시 한 번 살펴보고, 리얼타임 웹 애플리케이션을 얼마나 쉽게 작성할 수 있는지 살펴본다.

9장, 디버깅 : 노드에서 에러가 발생했을 때 수정하기 위한 디버깅 방법을 설명한다. 기본적인 디버깅 방법인 스택 트레이스를 추적하는 방법과 로그를 출력하는 방법을 알아보고, 복잡한 디버깅을 할 때 유용한 노드 인스펙터의 사용법을 알아본다. 노드 인스펙터는 노드의 내부 동작을 살펴보면서 디버깅을 할 수 있어 필수적으로 익혀야 할 도구다.

10장, 유닛 테스트 : 신뢰할 수 있는 코드를 작성하기 위해 유닛 테스트의 작성은 중요하다. 노드의 대표적인 테스트 프레임워크인 익스프레소(expresso)와 보우즈(Vows)의 사용 방법을 설명한다. 익스프레소는 전통적인 형태의 TDD 프레임워크이고, 보우즈는 노드에 특화된 비동기 테스트 프레임워크다. 두 프레임워크로 테스트 코드를 작성하는 방법을 살펴본다.

11장, 클라우드 서비스 배포 : 작성한 노드 애플리케이션을 서비스하기 위해 클라우드 서비스를 통한 배포를 살펴본다. 이벤트 기반의 노드는 확장성 있는 애플리케이션을 작성하기 좋으므로 클라우드의 특성과 잘 어울린다. VMWare의 클라우드 파운드리(Cloud Foundry)와 허로쿠(Heroku), 조이엔트(Joyent)에서 no.de 클라우드 서비스의 배포 방법과 관리 방법을 살펴본다.

★ 이 책의 대상 독자 ★

이 책은 자바스크립트를 다룰 줄 아는 프론트엔드 개발자나 서버사이드 개발자를 대상으로 한다. 자바스크립트에 대한 책이 아니라 노드를 설명하는 책이기 때문에 자바스크립트 코드는 읽을 수 있다고 가정한다. 자바스크립트를 알지 못하거나 프로그래밍에 대한 지식이 전혀 없다면 먼저 자바스크립트를 공부하길 권한다. 시중에 나와 있는 많은 자바스크립트 책을 통해 자바스크립트를 익힐 수 있다.

이 책의 예제는 자바스크립트에 대한 깊은 지식 없이도 이해할 수 있게 최대한 쉽게 작성했다. 상황에 따라 자바스크립트에 익숙하지 않은 개발자를 위해 간단한 설명을 추가했지만, 노드에서 필요하거나 중요한 부분이 아니라면 다루지 않는다. 그래서 노드 프로그래밍의 디자인 패턴이나 기법 중 클라이언트 자바스크립트와 동일하게 적용되는 대부분은 이 책에서 다루지 않는다.

예제의 자바스크립트 함수나 기능을 잘 모른다면 모질라 개발자 네트워크(MDN)의 자바스크립트 레퍼런스(https://developer.mozilla.org/en/JavaScript/Reference)를 참고하라. 가장 정확한 내용으로 잘 정리돼 있기 때문에 구글에서 검색했을 때 최상단에 나오는 W3CSchool 같은 사이트보다 낫다. 다만 모질라 개발자 네트워크는 한국어로 볼 때 링크가 깨지는 경우가 많으므로 영문으로 설정하고 보는 것이 좋다.

★ 노드란 무엇인가? ★

자바스크립트는 과거에는 제대로 인정받지 못하는 프로그래밍 언어였다. 자바스크립트의 리더 중 한 명인 더글러스 크록포드가 2001년 ‘자바스크립트: 세계에서 가장 저평가된 언어’(http://javascript.crockford.com/javascript.html)라는 글을 썼을 정도였다. 하지만 현업 개발자들이 수년 동안 자바스크립트를 발전시킨 덕분에, 2008년 더글러스 크록포드는 ‘세계에서 가장 저평가된 언어가 세계에서 가장 인기 있는 언어가 됐다.’(http://javascript.crockford.com/popular.html)라는 글을 올리기에 이른다. 최근 HTML5의 인기와 함께 자바스크립트는 역사상 최고의 전성기를 누리고 있으며, 이런 추세는 더욱 가속화될 전망이다. 소위 “자바스크립트로 못하는 것이 없다.”라고 할 만큼 성장했지만 웹브라우저 내에서만 동작한다는 한계가 있었다.

하지만 노드는 이 한계를 없애고 자바스크립트의 영역을 서버사이드 프로그래밍까지 넓혀주었다. 노드는 쉽고 강력한 환경으로 자바스크립트 언어를 서버사이드 프로그래밍 언어로 만들었고, 비약적으로 발전 중인 자바스크립트의 영역을 한 차원 높여줬다고 할 수 있다. 현재 노드는 개발자 커뮤니티 사이에서 높은 관심을 받고 있으며, 다음과 같은 특징이 있다.

·V8 자바스크립트 엔진
노드는 구글 크롬 웹브라우저의 자바스크립트 엔진인 V8을 기반으로 자바스크립트를 사용한다. 덕분에 개발자는 클라이언트에서 사용하던 자바스크립트의 경험과 지식을 그대로 사용해 서버 프로그래밍을 할 수 있다. 이는 노드에 대한 진입 장벽을 현저히 낮춰 쉽게 접근할 수 있는 이점을 준다. 그리고 현존하는 자바스크립트 엔진 중 가장 빠른 V8의 성능을 그대로 물려받아 어떤 프로그래밍 언어에 못지않은 성능을 보여준다.

·이벤트 기반 프로그래밍
노드는 이벤트 기반으로 동작한다. 많은 프로그래밍 언어가 멀티스레드 방식을 취하는데, 이벤트 기반은 이에 비교되는 개념이라고 할 수 있다. 멀티스레드는 동시에 여러 가지 일을 하기 위해 다수의 스레드를 만들어 작업하지만 노드의 이벤트 기반에서는 스레드가 딱 하나만 있다. 그래서 싱글 스레드가 모든 작업을 직접 처리하는 대신 작업을 위임하고 완료됐다는 이벤트가 발생하면 결과를 받아 처리한다. 작업이 처리되는 시간 동안 기다릴 필요가 없으므로 스레드가 효율적으로 동작한다. 이벤트 기반 프로그래밍은 넌블릭킹 I/O와 함께 동작하면서 성능이 극대화된다.

·비동기/넌블록킹 I/O
일반적인 I/O는 블록킹 I/O이다. 블록킹 I/O를 사용하면 스레드까지 블록킹돼 I/O를 사용하는 동안 스레드가 대기 상태에 있게 된다. 스레드가 대기 상태에 있는 시간은 사실상 낭비되는 시간이고, 싱글 스레드로 동작하는 노드에서 스레드가 블록킹되는 것은 성능에 큰 문제를 발생시킨다. 그리고 블록킹 I/O와 넌블록킹 I/O를 함께 사용하려면 많은 지식이 필요하다. 그래서 노드의 모든 I/O는 비동기로 동작하는 넌블록킹 I/O이고, I/O에 대한 전문 지식 없이도 쉽게 사용할 수 있다.

★ 저자 서문 ★

온라인에서 알고 지내던 프론트엔드 개발자들과 2년쯤 전에 FRENDS라는 모임을 만들었다. FRENDS에서 진행된 첫 기술 공유 모임에서 Aj가 노드에 대해 발표하면서 노드를 처음 접하게 되었다. 시기적으로 그 당시 노드는 세상에 나온 지 6개월 정도밖에 되지 않았던 꽤 이른 때였다. 자바스크립트를 좋아했던 터라 서버에서 동작하는 자바스크립트인 노드에 꽤 매력을 느꼈지만, 발표를 들을 때는 노드에 대해 잘 이해를 못했었다. 그 후 관심만 갖고 있다가 몇 달 후부터 본격적으로 노드를 공부하기 시작하면서 노드에 푹 빠져들었다.

국내에서는 기술 환경이 상당히 획일화돼 있기 때문에 해외에서 주목받는 기술이라 하더라도 국내까지 영향을 미치는 경우는 그다지 많지 않다. 내가 관심을 갖는 기술 중 상당수는 업무와 상관없는 개인적인 관심사였고, 노드도 마찬가지였다. 하지만 2011년으로 넘어오면서 국내에서도 노드에 대한 관심을 커지고 있음을 느낄 수 있었다. 노드에 대한 글을 블로그에 여러 번 올렸던 터라 몇 번의 좋은 기회를 얻어 노드에 대한 발표도 하다 보니, 기대 이상으로 많은 사람이 노드라는 기술에 관심을 가졌다는 사실을 알게 됐다. 게다가 개인적인 관심을 넘어 많은 회사에서 실제로 기술을 검토 중이고, 이 책의 초고를 완성할 때쯤에는 노드를 실제 서비스에 적용하는 회사들도 있었다. 기대보다 빠른 보급 속도는 노드를 좋아하는 나로서도 꽤 놀라운 일이었다.

나는 노드를 무척 좋아한다. 업무로 노드를 사용하지 않음에도 노드는 내 삶에 많은 영향을 줬고 즐거움을 줬다. 그래서 노드를 만든 라이언 달과 커미터들을 포함해 수많은 노드 개발자한테 항상 고마움을 느낀다. 노드를 아주 깊게 아는 것도 아니었고 국내에서 노드를 제일 잘하는 것도 아니었다. 그리고 국내에 노드를 전파해야겠다는 특별한 사명감을 가진 것도 아니었다. 하지만 블로그에 오랫동안 글을 올렸고 몇 번의 발표를 준비하면서 노드를 설명하기 위한 시나리오도 준비돼 있는 상태였다. 조금이나마 먼저 노드를 살펴본 사람으로서 아직 노드를 알지 못하는 사람들에게 조금이나마 도움을 주고자 시작했지만, 책을 쓰는 내내 책을 쓸 자격이 있는가에 대해 수없이 고민을 했다. 노드의 인기가 앞으로 얼마나 커질지는 현재 장담할 수 없지만, 그런 분위기도 개발자들이 직접 만들어 가는 것이라 생각한다. 이 책을 통해 노드에 관심 있는 사람들이 좀 더 쉽게 노드를 이해하고 내가 그랬던 것처럼 노드의 매력을 느낄 수 있기를 바랄 뿐이다.

기본정보

상품정보
ISBN 9788960772762
발행(출시)일자 2012년 02월 17일
쪽수 373쪽
크기
188 * 235 * 30 mm / 908 g
총권수 1권
시리즈명
에이콘 웹 프로페셔널 시리즈

Klover

Klover 리뷰 안내
교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1.리워드 안내
구매 후 90일 이내에 평점과 10자 이상의 리뷰 작성 시 e교환권 200원을 적립해 드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
한달 후 리뷰
구매 후 30일~ 120일 이내에 작성된 두 번째 구매리뷰에 대해 한 달 후 리뷰로 인지하고 e교환권 100원을 추가 제공합니다.

* 강연, 공연, 여행, 동영상, 사은품, 기프트카드 상품은 지급 제외
2.운영 원칙 안내
Klover 리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
3.신고하기
다른 고객이 작성리뷰에 대해 불쾌함을 느끼는 경우 신고를 할 수 있으며, 신고 자가 일정수준 이상 누적되면 작성하신 리뷰가 노출되지 않을 수 있습니다.

구매 후 리뷰 작성 시, e교환권 200원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여주는 교보문고의 새로운 서비스입니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 "좋아요“ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보 없이 삭제될 수 있습니다.
리워드 안내
구매 후 90일 이내에 문장수집 작성 시 e교환권 100원을 적립해드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.

구매 후 리뷰 작성 시, e교환권 100원 적립

이 책의 첫 기록을 남겨주세요

교환/반품/품절 안내

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

이벤트
TOP

저자 모두보기

저자(글)

매장별 재고 및 도서위치

할인쿠폰 다운로드

  • 쿠폰은 주문결제화면에서 사용 가능합니다.
  • 다운로드한 쿠폰은 마이 > 나의 통장 에서 확인 가능합니다.
  • 도서정가제 적용 대상 상품에 대해서는 정가의 10%까지 쿠폰 할인이 가능합니다.
  • 도서정가제 적용 대상 상품에 10% 할인이 되었다면, 해당 상품에는 사용하실 수
    없습니다.

적립예정포인트 안내

  • 통합포인트 안내

    • 통합포인트는 교보문고(인터넷, 매장), 핫트랙스(인터넷, 매장), 모바일 교보문고 등 다양한 곳에서 사용하실 수 있습니다.
    • 상품 주문 시, 해당 상품의 적립률에 따라 적립 예정 포인트가 자동 합산되고 주문하신 상품이 발송완료 된 후에 자동으로 적립됩니다.
    • 단, 쿠폰 및 마일리지, 통합포인트, e교환권 사용 시 적립 예정 통합포인트가 변동될 수 있으며 주문취소나 반품시에는 적립된 통합포인트가 다시 차감됩니다.
  • 통합포인트 적립 안내

    • 통합포인트는 도서정가제 범위 내에서 적용됩니다.
    • 추가적립 및 회원 혜택은 도서정가제 대상상품(국내도서, eBook등)으로만 주문시는 해당되지 않습니다.
  • 기본적립) 상품별 적립금액

    • 온라인교보문고에서 상품 구매시 상품의 적립률에 따라 적립됩니다.
    • 단 도서정가제 적용 대상인 국내도서,eBook은 15%내에서 할인율을 제외한 금액내로 적립됩니다.
  • 추가적립) 5만원 이상 구매시 통합포인트 2천원 추가적립

    • 5만원 이상 구매시 통합포인트 2천원 적립됩니다.
    • 도서정가제 예외상품(외서,음반,DVD,잡지(일부),기프트) 2천원 이상 포함시 적립 가능합니다.
    • 주문하신 상품이 전체 품절인 경우 적립되지 않습니다.
  • 회원혜택) 3만원이상 구매시 회원등급별 2~4% 추가적립

    • 회원등급이 플래티넘, 골드, 실버 등급의 경우 추가적립 됩니다.
    • 추가적립은 실결제액 기준(쿠폰 및 마일리지, 통합포인트, e교환권 사용액 제외) 3만원 이상일 경우 적립됩니다.
    • 주문 후 취소,반품분의 통합포인트는 단품별로 회수되며, 반품으로 인해 결제잔액이 3만원 미만으로 변경될 경우 추가 통합포인트는 전액 회수될 수 있습니다.

제휴 포인트 안내

제휴 포인트 사용

  • OK CASHBAG 10원 단위사용 (사용금액 제한없음)
  • GS&POINT 최대 10만 원 사용
더보기

구매방법 별 배송안내

지역별 도착 예정일

수도권 지역

배송 일정 안내 테이블로 결제 완료 시간, 도착예정일 결제 완료 시간 컬럼의 하위로 평일 0시 ~ 12시 토요일 0시 ~ 11시 평일 12시 ~ 22시 평일 12시 ~ 24시 토요일 11시 ~ 21시 을(를) 나타낸 표입니다.
결제 완료 시간 도착예정일
평일 0시 ~ 12시

토요일 0시 ~ 11시
당일배송 오늘

당일배송 오늘
평일 12시 ~ 22시

평일 12시 ~ 24시

토요일 11시 ~ 21시
새벽배송 내일 07시 이전

내일

일요배송 일요일

수도권 외 (천안, 대전, 울산, 부산, 대구, 창원)

배송 일정 안내 테이블로 결제 완료 시간, 도착예정일 결제 완료 시간 컬럼의 하위로 월~토 0시 ~ 11시 30분 을(를) 나타낸 표입니다.
결제 완료 시간 도착예정일
월~토 0시 ~ 11시 30분
당일배송 오늘

배송 유의사항

  • 새벽배송과 일요배송은 수도권 일부 지역을 대상으로 합니다. 상품 상세페이지에서 도착 예정일을 확인해 주세요.
  • 수도권 외 지역에서 선물포장하기 또는 사은품을 포함하여 주문할 경우 당일배송 불가합니다.
  • 무통장입금 주문 후 당일 배송 가능 시간 이후 입금된 경우 당일 배송 불가합니다.
  • 새벽배송의 경우 공동 현관 출입 번호가 누락 되었거나 틀릴 경우 요청하신 방법으로 출입이 어려워, 부득이하게 공동 현관 또는 경비실 앞에 배송 될 수 있습니다.
  • 학교, 관공서, 회사 등 출입 제한 시간이 있는 곳은 당일배송, 새벽배송, 일요배송이 제공되지 않을 수 있습니다.
  • 공휴일과 겹친 토요일, 일요일은 일요일 배송에서 제외됩니다. 일요배송은 한정 수량에 한해 제공됩니다. 수량 초과 시 일반배송으로 발송되니 주문 시 도착 예정일을 확인해 주세요.
  • 주문 후 배송지 변경 시 변경된 배송지에 따라 익일 배송될 수 있습니다.
  • 수도권 외 지역의 경우 효율적인 배송을 위해 각 지역 매장에서 택배를 발송하므로, 주문 시의 부록과 상이할 수 있습니다.
  • 각 지역 매장에서 재고 부족 시 재고 확보를 위해 당일 배송이 불가할 수 있습니다.
  • 기상악화로 인한 도로 사정으로 일부 지역의 배송 지연이 발생될 수 있습니다.
  • 출고 예정일이 5일 이상인 상품의 경우(결제일로부터 7일 동안 미입고), 출판사 / 유통사 사정으로 품/절판 되어 구입이 어려울 수 있습니다. 이 경우 SMS, 메일로 알려드립니다.
  • 분철상품 주문 시 분철 작업으로 인해 기존 도착 예정일에 2일 정도 추가되며, 당일 배송, 해외 배송이 불가합니다.
  • 해외주문도서는 해외 거래처 사정에 의해 품절/지연될 수 있습니다.
  • 스페셜오더 도서나 일서 해외 주문 도서와 함께 주문 시 배송일이 이에 맞추어 지연되오니, 이점 유의해 주시기 바랍니다.

바로드림존에서 받기

  1. STEP 01
    매장 선택 후 바로드림 주문
  2. STEP 02
    준비완료 알림 시 매장 방문하기
  3. STEP 03
    바로드림존에서 주문상품 받기
  • 바로드림은 전국 교보문고 매장 및 교내서점에서 이용 가능합니다.
  • 잡지 및 일부 도서는 바로드림 이용이 불가합니다.
  • 각 매장 운영시간에 따라 바로드림 이용 시간이 달라질 수 있습니다.

수령 안내

  • 안내되는 재고수량은 서비스 운영 목적에 따라 상이할 수 있으므로 해당 매장에 문의해주시기 바랍니다.
  • 바로드림 주문 후 재고가 실시간 변동되어, 수령 예상 시간에 수령이 어려울 수 있습니다.

취소/교환/반품 안내

  • 주문 후 7일간 찾아가지 않으시면, 자동으로 결제가 취소됩니다.
  • 취소된 금액은 결제수단의 승인취소 및 예치금으로 전환됩니다.
  • 교환/반품은 수령하신 매장에서만 가능합니다.

사은품 관련 안내

  • 바로드림 서비스는 일부 1+1 도서, 경품, 사은품 등이 포함 되지 않습니다.

음반/DVD 바로드림시 유의사항

  • 음반/DVD 상품은 바로드림 주문 후 수령점 변경이 불가합니다. 주문 전 수령점을 꼭 확인해 주세요.
  • 사은품(포스터,엽서 등)은 증정되지 않습니다.
  • 커버이미지 랜덤발매 음반은 버전 선택이 불가합니다.
  • 광화문점,강남점,대구점,영등포점,잠실점은 [직접 찾아 바로드림존 가기], [바로드림존에서 받기] 로 주문시 음반 코너에서 수령확인이 가능합니다
  • 선물 받는 분의 휴대폰번호만 입력하신 후 결제하시면 받는 분 휴대폰으로 선물번호가 전달됩니다.
  • 문자를 받은 분께서는 마이 > 주문관리 > 모바일 선물내역 화면에서 선물번호와 배송지 정보를 입력하시면 선물주문이 완료되어 상품준비 및 배송이 진행됩니다.
  • 선물하기 결제하신 후 14일까지 받는 분이 선물번호를 등록하지 않으실 경우 주문은 자동취소 됩니다.
  • 또한 배송 전 상품이 품절 / 절판 될 경우 주문은 자동취소 됩니다.

바로드림 서비스 안내

  1. STEP 01
    매장 선택 후 바로드림 주문
  2. STEP 02
    준비완료 알림 시 매장 방문하기
  3. STEP 03
    바로드림존에서 주문상품 받기
  • 바로드림은 전국 교보문고 매장 및 교내서점에서 이용 가능합니다.
  • 잡지 및 일부 도서는 바로드림 이용이 불가합니다.
  • 각 매장 운영시간에 따라 바로드림 이용 시간이 달라질 수 있습니다.

수령 안내

  • 안내되는 재고수량은 서비스 운영 목적에 따라 상이할 수 있으므로 해당 매장에 문의해주시기 바랍니다.
  • 바로드림 주문 후 재고가 실시간 변동되어, 수령 예상시간에 수령이 어려울 수 있습니다.

취소/교환/반품 안내

  • 주문 후 7일간 찾아가지 않으시면, 자동으로 결제가 취소됩니다.
  • 취소된 금액은 결제수단의 승인취소 및 예치금으로 전환됩니다.
  • 교환/반품은 수령하신 매장에서만 가능합니다.

사은품 관련 안내

  • 바로드림 서비스는 일부 1+1 도서, 경품, 사은품 등이 포함되지 않습니다.

음반/DVD 바로드림시 유의사항

  • 음반/DVD 상품은 바로드림 주문 후 수령점 변경이 불가합니다. 주문 전 수령점을 꼭 확인해주세요.
  • 사은품(포스터,엽서 등)은 증정되지 않습니다.
  • 커버이미지 랜덤발매 음반은 버전 선택이 불가합니다.
  • 광화문점,강남점,대구점,영등포점,잠실점은 [직접 찾아 바로드림존 가기], [바로드림존에서 받기] 로 주문시 음반코너에서 수령확인이 가능합니다.
  1. STEP 01
    픽업박스에서 찾기 주문
  2. STEP 02
    도서준비완료 후 휴대폰으로 인증번호 전송
  3. STEP 03
    매장 방문하여 픽업박스에서 인증번호 입력 후 도서 픽업
  • 바로드림은 전국 교보문고 매장 및 교내서점에서 이용 가능합니다.
  • 잡지 및 일부 도서는 바로드림 이용이 불가합니다.
  • 각 매장 운영시간에 따라 바로드림 이용 시간이 달라질 수 있습니다.

수령 안내

  • 안내되는 재고수량은 서비스 운영 목적에 따라 상이할 수 있으므로 해당 매장에 문의해주시기 바랍니다.
  • 바로드림 주문 후 재고가 실시간 변동되어, 수령 예상시간에 수령이 어려울 수 있습니다.

취소/교환/반품 안내

  • 주문 후 7일간 찾아가지 않으시면, 자동으로 결제가 취소됩니다.
  • 취소된 금액은 결제수단의 승인취소 및 예치금으로 전환됩니다.
  • 교환/반품은 수령하신 매장에서만 가능합니다.

사은품 관련 안내

  • 바로드림 서비스는 일부 1+1 도서, 경품, 사은품 등이 포함되지 않습니다.

음반/DVD 바로드림시 유의사항

  • 음반/DVD 상품은 바로드림 주문 후 수령점 변경이 불가합니다. 주문 전 수령점을 꼭 확인해주세요.
  • 사은품(포스터,엽서 등)은 증정되지 않습니다.
  • 커버이미지 랜덤발매 음반은 버전 선택이 불가합니다.
  • 광화문점,강남점,대구점,영등포점,잠실점은 [직접 찾아 바로드림존 가기], [바로드림존에서 받기] 로 주문시 음반코너에서 수령확인이 가능합니다.

도서 소득공제 안내

  • 도서 소득공제란?

    • 2018년 7월 1일 부터 근로소득자가 신용카드 등으로 도서구입 및 공연을 관람하기 위해 사용한 금액이 추가 공제됩니다. (추가 공제한도 100만원까지 인정)
      • 총 급여 7,000만 원 이하 근로소득자 중 신용카드, 직불카드 등 사용액이 총급여의 25%가 넘는 사람에게 적용
      • 현재 ‘신용카드 등 사용금액’의 소득 공제한도는 300만 원이고 신용카드사용액의 공제율은 15%이지만, 도서·공연 사용분은 추가로 100만 원의 소득 공제한도가 인정되고 공제율은 30%로 적용
      • 시행시기 이후 도서·공연 사용액에 대해서는 “2018년 귀속 근로소득 연말 정산”시기(19.1.15~)에 국세청 홈택스 연말정산간소화 서비스 제공
  • 도서 소득공제 대상

    • 도서(내서,외서,해외주문도서), eBook(구매)
    • 도서 소득공제 대상 상품에 수반되는 국내 배송비 (해외 배송비 제외)
      • 제외상품 : 잡지 등 정기 간행물, 음반, DVD, 기프트, eBook(대여,학술논문), 사은품, 선물포장, 책 그리고 꽃
      • 상품정보의 “소득공제” 표기를 참고하시기 바랍니다.
  • 도서 소득공제 가능 결제수단

    • 카드결제 : 신용카드(개인카드에 한함)
    • 현금결제 : 예치금, 교보e캐시(충전에한함), 해피머니상품권, 컬쳐캐쉬, 기프트 카드, 실시간계좌이체, 온라인입금
    • 간편결제 : 교보페이, 네이버페이, 삼성페이, 카카오페이, PAYCO, 토스, CHAI
      • 현금결제는 현금영수증을 개인소득공제용으로 신청 시에만 도서 소득공제 됩니다.
      • 교보e캐시 도서 소득공제 금액은 교보eBook > e캐시 > 충전/사용내역에서 확인 가능합니다.
      • SKpay, 휴대폰 결제, 교보캐시는 도서 소득공제 불가
  • 부분 취소 안내

    • 대상상품+제외상품을 주문하여 신용카드 "2회 결제하기"를 선택 한 경우, 부분취소/반품 시 예치금으로 환원됩니다.

      신용카드 결제 후 예치금으로 환원 된 경우 승인취소 되지 않습니다.

  • 도서 소득공제 불가 안내

    • 법인카드로 결제 한 경우
    • 현금영수증을 사업자증빙용으로 신청 한 경우
    • 분철신청시 발생되는 분철비용

알림 신청

아래의 알림 신청 시 원하시는 소식을 받아 보실 수 있습니다.
알림신청 취소는 마이룸 > 알림신청내역에서 가능합니다.

Node.Js 노드제이에스 프로그래밍
클라우드 컴퓨팅 시대의 고성능 자바스크립트 플랫폼
신고

신고 사유를 선택해주세요.
신고 내용은 이용약관 및 정책에 의해 처리됩니다.

허위 신고일 경우, 신고자의 서비스 활동이 제한될 수 있으니 유의하시어
신중하게 신고해주세요.

판형알림

  • A3 [297×420mm]
  • A4 [210×297mm]
  • A5 [148×210mm]
  • A6 [105×148mm]
  • B4 [257×364mm]
  • B5 [182×257mm]
  • B6 [128×182mm]
  • 8C [8절]
  • 기타 [가로×세로]
EBS X 교보문고 고객님을 위한 5,000원 열공 혜택!
자세히 보기

해외주문양서 배송지연 안내

현재 미국 현지 눈폭풍으로 인해
해외 거래처 출고가 지연되고 있습니다.

해외주문양서 주문 시
예상 출고일보다 배송기간이 더 소요될 수 있으니
고객님의 너그러운 양해 부탁드립니다.

감사합니다.