본문내용 바로가기
MD의선택 무료배송 이벤트 사은품 소득공제

Node.js로 프로그래밍 시작하기

조나단 웩슬러 지음 | 김성준 옮김 | 에이콘출판 | 2020년 01월 31일 출간
클로버 리뷰쓰기
  • 정가 : 36,000원
    판매가 : 32,400 [10%↓ 3,600원 할인]
  • 통합포인트 :
    [기본적립] 1,800원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    03월 03일 출고 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내 바로드림 혜택
    휴일에는 바로드림 픽업으로 더 빨리 받아 보세요. 바로드림 혜택받고 이용하기

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

  • 행사도서 구매 시 2021 캘린더 노트 선택가능
    2020.11.09 ~ 2021.03.31
  • 책을 통해 성장해나가는 개발자를 응원합니다.
    2017.06.22 ~ 2025.07.31
  • MANNING, O'REILLY, PACKT, WILE..
    2016.03.07 ~ 2021.12.31
상품상세정보
ISBN 9791161753829(1161753826)
쪽수 548쪽
크기 189 * 235 * 29 mm /1271g 판형알림
이 책의 원서/번역서 Get Programming with Node.Js / Wexler, Jonathan

책소개

이 책이 속한 분야

이 책의 주제어

Node.js 설치부터 채팅 시스템 구현에 이르기까지 Node.js를 활용해 하나의 시스템을 완성하는 방법을 폭넓게 다룬다. 특히 Confetti Cusine이라는 가상 요리 학교의 수업 등록 사이트 제작을 캡스톤 프로젝트로 정하고 이를 구현하면서 실제 Node.js를 활용한 개발 과정을 보여준다. 진행하는 과정에서 볼 수 있는 Q&A를 풀어간다면 Node.js를 활용한 개발에서 기억해야 할 점을 잘 정리하게 될 것이다.

상세이미지

Node.js로 프로그래밍 시작하기 도서 상세이미지

작가의 말

★ 지은이의 말 ★
인터넷이 대중과 소통하는 도구가 된 지 거의 4반세기가 지난 지금, 기술 직업 시장은 그 어느 때보다도 커졌다. 신생 기업부터 대기업에 이르기까지 거의 모든 기업이 자신의 브랜드, 제품을 홍보하기 위한 온라인 인지도, 나아가 좀 더 똑똑한 도구를 찾고 있다. 다행히 요즘에는 시장의 요구를 충족시키는 데 컴퓨터 과학 학위 또는 데이터 과학 석사 학위까지는 필요하지 않다. 또한 이러한 툴 구축에 필요한 기술 대부분은 오픈소스 기술을 통해 거의 또는 전혀 비용을 들이지 않고 얻을 수 있다.
New York Code+Design Academy에서 웹 개발의 집중 교육 과정을 가르치고 새로운 커리큘럼을 구축하면서 풀스택 교육의 강점을 깨달았다. 개발 경험이 없는 학생들에게 3개월 만에 프로그래밍 비전을 실현하도록 가르칠 수 있었다. 당신이라고 해서 못할 것은 없지 않겠는가?
나는 Node.js에서 웹 개발의 학습 단계를 정립하고자 이 책을 썼다. 각 단원은 웹 개발의 핵심 콘셉트를 담았으며, 사용자의 웹 애플리케이션에 코드를 어떻게 적용할지도 알아볼 것이다. 웹 서버로 블록을 만들고, 이를 사용자의 웹 애플리케이션에 어떻게 적용시키는지도 설명한다.
아울러 동일한 부트 캠프 학습 전략을 사용해 동적 웹 페이지, 사용자 계정, 데이터베이스, 라이브 채팅의 세계로 안내할 것이다. 이 책이 끝나면 모든 기능을 갖춘 인터넷상의 애플리케이션을 볼 수 있다.
이 책의 예제들은 새로운 애플리케이션에 대한 아이디어를 떠올리게 할 수 있으며, 새로운 비즈니스나 개인 포트폴리오로 쓸 수도 있을 것이다.
여러분이 어떤 용도로 이 책을 선택했든 간에, Node.js 프로그래밍을 시작하기 위한 모든 내용을 이 책에서 찾을 수 있다.
학습 프로세스의 접근 장벽을 낮추고 내용을 더 흥미롭게 만드는 것이 목표다. 대다수의 신입 엔지니어가 느끼는 좌절감은 다음 두 가지다. 참조 소스가 여기저기 흩어져 있고, 이 소스들이 매번 완전하게 맞춰지지 않는다는 것이다. 그리고 Node.js는 개발자에게 비교적 새로운 플랫폼이다. 온라인 커뮤니티에서 질문에 답을 줄 수도 있지만 신입 웹 개발자는 모든 재료 리스트를 찾고 맨땅에서부터 최종 애플리케이션을 만드는 데까지 레시피를 찾으려면 오랜 시간이 걸릴 것이다. 이 책은 프로그래밍의 표면적인 부분과 조금 더 심화적인 내용을 다룬다.
이 책의 예제를 따라 하는 것 두려워하지 말고 핵심 콘셉트를 이해할 때는 인내심을 갖기 바란다. 어려움이 있다면 질문하고 이 책의 포럼에서 다른 독자와 소통하기 바란다(그들도 아마 당신과 똑같은 어려움에 부딪혀 있을 것이다). 꾸준한 연습과 결단력으로 여러분의 Node.js에 대한 재능을 개발자가 필요한 조직에서 펼칠 수 있을 것이다.

★ 옮긴이의 말 ★
처음 JavaScript라는 언어를 접한 건 1997년이었다. 당시 JavaScript는 오늘날처럼 class라는 개념도 없었고 단순히 웹 클라이언트 레벨에서 로직을 처리하는 언어로 사용됐다. 하지만 빠른 개발 속도 때문에 어떤 벽을 하나만 넘으면 상당히 널리 쓰일 것만 같았다.
저자가 서문에서 밝혔듯이 2009년은 JavaScript에 혁신적인 한 해였다. 웹 브라우저에서만 구동되는 것으로 인식됐던 JavaScript가 드디어 브라우저가 아닌 일반 인터프리터 언어처럼 사용할 수 있게 됐기 때문이다. 내가 생각했던 벽이 이때 없어지면서 JavaScript는 비약적인 발전을 했고, 이를 토대로 Vue.js, React.js 등 어마어마한 프레임워크도 만들어졌다. 이 변혁으로 얻은 큰 장점은 프론트엔드와 서버사이드의 언어를 일치시킬 수 있다는 것이다.
이 책은 Node.js의 기초와 Express.js 패키지 사용법을 프로젝트를 통해 설명하고 있다. 이 책으로 어느 정도 Node.js의 인식을 다졌다면 Vue.js나 React.js를 통해 프론트엔드로 진로를 설정할 수도 있고 Express.js를 좀 더 활용해 백엔드로 가져갈 수도 있다. 결국 이 책은 백엔드와 프론트엔드 모두 기초가 되는 책이라는 점에는 틀림이 없다. 이 책으로 Node.js를 시작하는 모든 이에게 건투를 빈다.

목차

추천의 글
지은이 소개
지은이의 말
감사의 글
옮긴이 소개
옮긴이의 말
들어가며

Unit 0. 시작하기

Lesson 0. Node.js의 설정과 JavaScript 엔진 설치
__0.1 여러분이 배울 것들
__0.2 Node.js의 이해
__0.3 왜 Node.js로 개발하는가?
__0.4 준비 사항
__0.5 요약

Lesson 1. 환경설정
__1.1 Node.js 설치
__1.2 텍스트 에디터 설치
__1.3 SCM과 배포 도구 설치
__1.4 터미널에서 Node.js REPL로 작업하기
__1.5 요약

Lesson 2. Node.js 애플리케이션 실행
__2.1 JavaScript 파일의 생성
__2.2 Node.js로 JavaScript 파일 실행하기
__2.3 개별 JavaScript 명령 실행하기
__2.4 요약

Unit 1. Node.js의 시작

Lesson 3. Node.js 모듈의 생성
__3.1 npm 실행
__3.2 Node.js 애플리케이션의 초기화
__3.3 요약

Lesson 4. Node.js에서 웹 서버 만들기
__4.1 웹 서버의 이해
__4.2 npm으로 애플리케이션 초기화
__4.3 애플리케이션 코딩
__4.4 애플리케이션의 실행
__4.5 요약

Lesson 5. 수신 데이터 다루기
__5.1 서버 코드의 수정
__5.2 요청 데이터의 분석
__5.3 웹 애플리케이션에 라우트 붙이기
__5.4 요약

Lesson 6. 라우트와 외부 파일
__6.1 fs 모듈을 이용한 정적 파일 제공
__6.2 에셋 제공
__6.3 라우트를 다른 파일로 바꿔 연결하기
__6.4 요약

Lesson 7. 캡스톤 프로젝트: 첫 번째 웹 애플리케이션 만들기
__7.1 애플리케이션의 초기화
__7.2 애플리케이션 디렉터리 구조의 이해
__7.3 router.js 및 main.js 파일의 생성
__7.4 뷰 페이지 생성
__7.5 에셋 추가
__7.6 라우트 생성
__7.7 요약

Unit 2. Express.js를 통한 웹 개발

Lesson 8. Express.js의 설정
__8.1 Express.js 패키지 설치
__8.2 첫 Express.js 애플리케이션의 작성
__8.3 웹 프레임워크를 이용한 작업
__8.4 요약

Lesson 9. Express.js에서의 라우트
__9.1 Express.js로 라우트 만들기
__9.2 요청 데이터의 분석
__9.3 MVC의 사용
__9.4 요약

Lesson 10 뷰와 템플릿의 연결
__10.1 템플릿 엔진의 연결
__10.2 컨트롤러로부터의 데이터 전달
__10.3 요소들 및 레이아웃 설정
__10.4 요약

Lesson 11. 설정과 에러 처리
__11.1 시작 스크립트 수정
__11.2 Express.js의 에러 처리
__11.3 정적 파일의 제공
__11.4 요약

Lesson 12. 캡스톤 프로젝트: Express.js를 통한 Confetti Cuisine 사이트 개선
__12.1 애플리케이션 초기화
__12.2 애플리케이션 제작
__12.3 라우트의 추가
__12.4 뷰로 라우팅
__12.5 정적 뷰 제공
__12.6 뷰로의 콘텐츠 전달
__12.7 에러 처리
__12.8 요약

Unit 3. 데이터베이스 연결

Lesson 13. 몽고DB 데이터베이스 셋업
__13.1 몽고DB 세팅
__13.2 몽고DB 셸에서 명령어 실행
__13.3 애플리케이션에 몽고DB 연결
__13.4 요약

Lesson 14. Mongoose를 사용한 모델 제작
__14.1 Node.js 애플리케이션으로 Mongoose 설정
__14.2 스키마의 생성
__14.3 모델의 분류
__14.4 요약

Lesson 15. 컨트롤러와 모델과의 연결
__15.1 구독자를 위한 컨트롤러 만들기
__15.2 포스팅된 데이터의 모델로의 저장
__15.3 Mongoose로 프로미스 사용
__15.4 요약

Lesson 16. 캡스톤: 사용자 구독 저장
__16.1 데이터베이스의 설정
__16.2 데이터 모델링
__16.3 구독자 뷰와 라우터 추가
__16.4 요약

Unit 4. 사용자 모델 제작

Lesson 17. 데이터 모델의 개선
__17.1 모델에 유효성 평가 추가
__17.2 REPL에서의 테스팅 모델
__17.3 모델 조합의 생성
__17.4 연결 모델로부터의 데이터 포퓰레이팅
__17.5 요약

Lesson 18. 사용자 모델의 구현
__18.1 사용자 모델 작성
__18.2 모델에 CRUD 메소드 붙이기
__18.3 인덱스 페이지 작성
__18.4 액션의 정리
__18.5 요약

Lesson 19. 모델의 생성과 읽기
__19.1 새로운 사용자 폼 제작
__19.2 뷰로부터 새로운 사용자 생성
__19.3 show를 통한 사용자 데이터 읽기
__19.4 요약

Lesson 20. 모델의 업데이트와 삭제
__20.1 사용자 정보 편집 폼 생성
__20.2 뷰에서 사용자 수정 폼
__20.3 delete 액션에서 사용자 삭제
__20.4 요약

Lesson 21. 캡스톤 프로젝트: Confetti Cusine에 CRUD 모델 추가
__21.1 시작하기
__21.2 모델의 생성
__21.3 뷰의 생성
__21.4 라우트 구조화
__21.5 컨트롤러 제작
__21.6 요약

Unit 5. 사용자 계정 인증

Lesson 22. 세션과 플래시 메시지의 추가
__22.1 플래시 매시지 모듈 설정
__22.2 컨트롤러 액션에 플래시 메시지 추가
__22.3 요약

Lesson 23. 사용자 로그인 폼 생성과 패스워드 해시
__23.1 사용자 로그인 폼
__23.2 패스워드의 해싱
__23.3 express-validator 로 유효성 체크 미들웨어 추가
__23.4 요약

Lesson 24. 사용자 인증 추가
__24.1 Passport.js의 실행
__24.2 패스포트 등록 사용을 위한 Create 액션 수정
__24.3 로그인 시 사용자 인증
__24.4 요약

Lesson 25. 캡스톤 프로젝트: Confetti Cuisine에 사용자 인증 추가
__25.1 준비 작업
__25.2 로그인 폼의 생성
__25.3 passport.js를 이용한 암호화 추가
__25.4 플래시 메시징 추가
__25.5 express-validator로 유효성 체크 미들웨어 추가
__25.6 Passport.js로 인증 추가
__25.7 로그인과 로그아웃
__25.8 요약

Unit 6. API 빌드

Lesson 26. 애플리케이션에 API 추가
__26.1 라우트의 구성
__26.2 API의 생성
__26.3 클라이언트로부터 API호출
__26.4 요약

Lesson 27. 애플리케이션에서 API 액세스
__27.1 API 네임스페이스의 적용
__27.2 모달을 통한 강좌의 결합
__27.3 모델 간 통신을 위한 API 엔드포인트 생성
__27.4 요약

Lesson 28. API 보안
__28.1 간단한 보안 구현
__28.2 API 토큰 추가
__28.3 JSON 웹 토큰의 사용
__28.4 요약

Lesson 29. 캡스톤 프로젝트: API 구현
__29.1 라우트의 재구성
__29.2 강좌의 일부 추가
__29.3 AJAX 함수 생성
__29.4 API 엔드포인트 추가
__29.5 사용자 등록을 위한 액션 생성
__29.6 요약

Unit 7. 채팅 기능 추가

Lesson 30. socket.io로의 작업
__30.1 socket.io의 사용
__30.2 채팅 박스 생성
__30.3 서버와 클라이언트의 연결
__30.4 요약

Lesson 31. 채팅 메시지의 저장
__31.1 사용자와 메시지의 연결
__31.2 채팅에서 사용자 이름 표시
__31.3 메시지 모델의 생성
__31.4 요약

Lesson 32. 채팅 알림 표시 추가
__32.1 다른 소켓으로의 브로드캐스팅
__32.2 내비게이션에 채팅 표시기 생성
__32.3 요약

Lesson 33. 캡스톤 프로젝트: Confetti Cuisine에 채팅 기능 추가
__33.1 socket.io 설치
__33.2 서버에 socket.io 설정
__33.3 클라이언트에서 socket.io 설정
__33.4 메시지 모델 생성
__33.5 접속 시 메시지 읽어들이기
__33.6 채팅 아이콘 설정
__33.7 요약

Unit 8. 프로덕션에서의 코드 배포와 관리
Lesson 34. 애플리케이션 배포
__34.1 배포 준비
__34.2 애플리케이션의 배포
__34.3 프로덕션에서 데이터베이스 설정
__34.4 요약

Lesson 35. 프로덕션에서의 관리
__35.1 시드 데이터 읽기
__35.2 린팅
__35.3 애플리케이션의 디버깅
__35.4 요약

Lesson 36 애플리케이션의 테스팅
__36.1 코어 모듈의 기본 테스팅
__36.2 mocha와 chai를 이용한 테스팅
__36.3 데이터베이스 및 서버 테스팅
__36.4 요약

Lesson 37. 캡스톤 프로젝트: Confetti Cuisine의 배포
__37.1 린팅과 로깅
__37.2 배포를 위한 준비
__37.3 Heroku로의 배포
__37.4 데이터베이스의 설정
__37.5 프로덕션에서의 디버깅
__37.6 요약

Appendix A. ES6에서 소개하는 JavaScript 문법

Appendix B. 로깅과 Node.js의 전역 객체의 사용

찾아보기

추천사

카일리 심슨(Getify, 오픈 웹 에반젤리스트)

나는 운 좋게도 2009년 말 독일 베를린에서 열린 첫 번째 JSConf.EU에 참가했다. 250명이 넘는 사람들이 모인 곳에서 잘 모르는 연사가 갑자기 일어나 자신을 라이언 달(Ryan Dahl)이라고 소개했다. 한 시간 ... 더보기

출판사 서평

★ 이 책에 쏟아진 찬사 ★

"Node.js로 가는 길을 실용적이고 명료하게 제시한다"
카일리 심슨(Kyle Simpson), Getify

"JavaScript 프로그래머를 한 주 안에 Node 닌자로 키워준다"
조셉 화이트(Joseph White), Joecasa Consulting

"최신 기술을 사용해 Node.js 앱 개발을 단계별로 안내해주는 위대한 책"
제레미 랭(Jeremy Lange), Sertifi

"Node의 핵심을 배우고 빠른 생산성을 갖추기 위한 모범이 되는 책"
비풀 ... 더보기

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

최근 본 상품