청구할인 안내(인터파크 제휴카드) | 안내
삼성카드 5% (3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (최대할인 3만원 / 3만원 이상 결제)
하나SK 북&카드 30% (최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (최대할인 3만원 / 3만원 이상 결제)
Close

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

MEAN 스택을 사용한 모던 웹 개발 입문 : 풀 스택 엔지니어로 이끌어주는

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

28,000원

  • 25,200 (10%할인)

    1,400P (5%적립)

  • (1건)

    25,200원 ~(10%할인)

    [특급]

  • 중고판매

    이 책을 인터파크에
    판매하세요

  • 이벤트/기획전

  • 연관도서(53)

  • 사은품(2)

책소개

전통적으로 웹 애플리케이션은 백엔드가 모든 프론트엔드 코드를 만들어내게 아키텍처를 수립해왔다. 하지만 이런 아키텍처를 기반으로 하면 관리와 확장이 어려운 복잡한 프로젝트가 만들어지고 만다. 이 책은 프론트엔드를 마치 모바일 클라이언트처럼 다루는 방식으로 웹 애플리케이션을 작성하는 새로운 방식을 설명한다. 구체적으로 MEAN 자바스크립트 플랫폼을 활용해 관리와 확장이 손쉬운 현대적인 웹 애플리케이션 작성부터 배포와 테스트에 이르기까지 전 개발주기를 설명한다. 웹 개발의 변천사에 이어 MEAN 스택의 장점을 소개한 다음에 MEAN을 구성하는 개별 요소에 대해 설명하고 나서 완벽한 자바스크립트 기반의 애플리케이션 개발로 뛰어든다. 이 책을 읽으면서 MEAN을 사용한 개발 환경 설정, 빌드, 테스트, 배포에 대한 기본기를 탄탄하게 다져보자!

출판사 서평

[이 책에서 다루는 내용]

- 자세한 설명, 풍부한 그림, 명쾌한 예제
- MEAN 개발자로부터 얻는 통찰력 있는 우수 관례
- 확장 가능한 고속 애플리케이션을 빠르게 만드는 방법 강조

[이 책의 대상 독자]

이 책은 웹 애플리케이션 구현의 변천사를 배우고 싶은 웹 개발자를 위한 책이다. 이 책은 독자에게 기초적인 자바스크립트 지식이 있다고 가정한다. 노드나 AngularJS에 대한 지식은 도움이 되지만 필수 조건은 아니다.

목차

1장. 새로운 모던 웹 아키텍처의 변화
정적인 앱의 등장
- Ajax로 강화된 자바스크립트
- 점진적인 향상
- 스파게티 자바스크립트
- 모바일 API
무거운 클라이언트 세상으로
- 모던 웹 아키텍처의 동작 방식
- 모던 웹 아키텍처의 장점

2장. 자바스크립트가 모던 앱을 위한 좋은 선택인 이유
AngularJS란 무엇인가
- AngularJS는 제이쿼리와 어떻게 다른가
노드란 무엇인가
- 스타트업 VS 기업
- 기업 환경에서 노드
- 노드의 성능
- 이벤트 아키텍처
- 콜백 동작 방식
- 모듈과 NPM
- 노드 설치
- 평범한 HTTP 서버 만들기
익스프레스란 무엇인가
- 익스프레스 설치
- 노드를 위한 데이터베이스
몽고DB란 무엇인가
- 문서 중심
- BSON
- 자동 샤딩을 사용한 수평 확장
- 스키마 부재
- 몽고DB 설치
- 몽고DB 사용
- 다큐먼트 삽입
- 다큐먼트 질의

3장. 소셜 네트워크 프로젝트 소개
최신 글을 보여주기 위한 정적 모형 페이지 생성
페이지를 AngularJS화 하기
새로운 글 추가
정리

4장. 노드 API 구축
기본적인 종단점
API로 글 올리기
몽구스로 몽고DB 모델 생성
POST 종단점에서 몽구스 모델 사용
정리

5장. 노드와 AngularJS 통합
$http
- 프라미스란
$http를 사용해 API로 글 읽기
노드를 사용한 posts.html 제공
$http를 사용해 API로 글 저장하기
글 순서 고치기
server.js 정리
- /api/posts 분리하기
- 이름공간으로 라우터 경로 지정
- sendfile 종단점 분리
AngularJS 정리
- 정적 자산 제공
- AngularJS를 서비스로 분리하기
정리

6장. 걸프를 사용한 빌드 자동화
그룬트와 걸프 소개
Gulp Hello World
걸프를 사용한 자바스크립트 빌드
- Uglifier
- 파일 변경에 따른 재빌드
- 소스 지도
걸프를 사용한 CSS 빌드
걸프 dev 작업
- Gulp-Nodemon
그 밖의 걸프 플러그인
정리

7장. 노드로 인증 구현
토큰 인증 소개
JWT(JSON Web Token)
- 익스프레스와 함께하는 JWT
- 비밀번호 인증
BCrypt 사용
몽고DB로 인증
정리

8장. 라우팅과 클라이언트 인증 추가
라우팅
로그인 폼 생성
익스프레스 인증
AngularJS 이벤트
소셜 글 인증
HTML5 pushstate
등록
로그아웃
기억하기
user 외래 키
정리

9장. 웹소켓을 사용한 푸시 통지
웹소켓 소개
웹소켓 동작 방식
웹소켓을 어디에 사용해야 하는가
소셜 앱에서 웹소켓 구현
- ws 웹소켓에 연결
- 새로운 글 통지
AngularJS에서 웹소켓 구현
웹소켓 아키텍처
- 재접속
- 보안
- 다중 프로세스/다중 서버 설계
- 클라이언트에서 온 이벤트 전달
동적 웹소켓 호스트 이름
정리

10장. 종단간 테스트 수행
프로트랙터 설정
자바스크립트 테스트 프레임워크
기본적인 프로트랙터 테스트 작성
- 프로트랙터 구성과 동작
- 프로트랙터 내부에서 노드 시작
- 프로트랙터 위치 탐지기
- navbar의 로그인 링크 누르기
- 프로트랙터로 실제 글을 올리기
- 프로트랙터 실행 후에 데이터베이스 삭제하기
프로트랙터 결과 비교
chai-as-promised
종단간 테스트를 사용해야 할 시점
정리

11장. 노드 서버 테스트
완전하지 않은 단위 테스트
노드를 위한 모카
post 컨트롤러
SuperTest
기본 라우터
SuperTest로 기반 라우터 사용
컨트롤러 테스트에서 모델 점검
컨트롤러에서 인증 테스트
코드 커버리지
npm test 명령
JSHint
정리

12장. AngularJS 테스트
카르마 사용
바우어 사용
카르마 설정
기본적인 카르마 서비스 테스트
카르마를 사용한 HTTP 테스트
카르마 컨트롤러 테스트
스파이 테스트
정리

13장. 허로쿠에 배포
서비스로서 플랫폼
허로쿠 동작 방식
앱을 위한 12가지 요소 방법론
애플리케이션을 허로쿠에 배포
허로쿠에서 몽고DB 사용
허로쿠에서 레디스
자산 컴파일
노드 클러스터
정리

14장. 디지털 오션에 배포
디지털 오션이란?
단일 서버 대 다중 서버 아키텍처
페도라 20
서버 생성
노드 설치
몽고DB 설치
레디스 설치
소셜 앱 서비스하기
systemd 아래에서 소셜 앱 서비스하기
무중단 배포
다중 서버 이주
- 부하 분산
- 중앙집중화된 데이터베이스
- 사설 네트워크
정리
결론

본문중에서

나는 2004년부터 웹 개발자로 일해왔으며, 주요 웹 플랫폼 대다수에서 전문적인 개발을 진행해왔다. 애플리케이션 제작을 더 편하게 만들기 위한 새로운 기술 탐험을 좋아한다.
AngularJS와 같은 MVC 프레임워크로 만든 애플리케이션은 지금까지 웹 공동체에서 목격한 패러다임 변화 중에 가장 급진적이었다. 많은 프레임워크와 도구들이 나타났다 사라졌지만, 클라이언트 쪽의 MVC 애플리케이션은 근본적으로 다르다.
AngularJS와 노드를 사용해 출시한 애플리케이션의 품질에 감명을 받아왔다. AngularJS와 노드는 단순하며 어떤 경우에는 다소 소박하기도 하다. 하지만 이런 단순성에는 코드 기반을 유지하고 기능을 반복적으로 개선하기 위한 환상적인 능력이 따라온다.
MEAN 스택으로 만든 애플리케이션은 점점 인기가 높아지고 있지만, 많은 개발 팀은 여전히 서버에서 생성된 페이지와 관계형 데이터베이스에 편안함을 느낀다.
MEAN 애플리케이션을 개발한 행운을 토대로 여러 개발자들과 MEAN을 사용한 구축 지식을 공유하고 싶다.
애플리케이션 구축의 새로운 방법을 탐험하는 과정을 즐기기 바란다. 이런 주제에 대한 논의를 좋아하기에, 트위터에서 대화를 계속 나눌 수 있으면 좋겠다.
(/ '저자 서문' 중에서)

자바스크립트 하면 웹브라우저부터 떠올리기 마련이다. 하지만 점점 영역을 넓혀서 요즘 자바스크립트는 임베디드 장비부터 애플리케이션 서버와 데이터베이스에 이르기까지 다양한 분야에서 맹활약 중이다. 일례로 TESSEL(http://www.tessel.io)은 자바스크립트를 구동하는 마이크로컨트롤러이며 노드 호환이 가능한 개발 환경을 갖춰 npm 패키지 형태로 다양한 디바이스 프로그래밍을 가능하게 만든다.
bonescript(http://beagleboard.org/support/bonescript)는 비글본(Beaglebone) 보드에 최적화된 Node.js 라이브러리로 아두이노(Arduino) 함수 호출 방식으로 임베디드 프로그램을 작성하게 도와준다. 풀 스택(full stack)을 기치로 내걸어 웹부터 데이터베이스까지 모든 프로그래밍을 자바스크립트로 가능하게 만들었으며, 이제 임베디드 단말까지 자바스크립트로 프로그래밍이 가능한 세상이 도래했다. 이런 변화는 개발자에게 상당히 큰 의미를 부여한다. 과거에는 임베디드 프로그램은 C, 웹 서비스/애플리케이션 개발은 PHP나 루비 등의 인터프리터 또는 기업용 환경에 적합한 자바, 웹 브라우저 프로그래밍은 자바스크립트(그리고 HTML5와 CSS), 데이터베이스 질의는 SQL 등으로 명확하게 나뉘어졌지만 이제는 모두 자바스크립트로 가능하기 때문이다. C와 비교할 수 없는 범용성을 자랑하는 자바스크립트라는 언어가 등장했으므로 프로그래밍 언어 학습에 따른 부담이 줄어들었다.
자, 그렇다면 서비스 개발자 입장에서 편재적인 자바스크립트를 사용해 웹브라우저부터 애플리케이션 서버를 거쳐 데이터베이스에 이르기까지 빠른 시간 내에 애플리케이션을 개발하려면 어떻게 해야 할까? 대답은 바로 MEAN이다. MEAN은 몽고DB(MongoDB), 익스프레스(Express), AngularJS, 노드(Node.js)의 첫 글자를 따서 만들었으며, 과거 웹 개발에 유명했던 LAMP(리눅스Linux, 아파치Apache, MySQL, PHP(또는 펄Perl))에 비견할만한 지위를 갖추고 있다. MEAN과 LAMP의 공통점은 구성 요소가 모두 오픈소스라는 점이고 차이점은 여러 가지 언어가 복잡하게 얽힌 LAMP와 달리 MEAN에서는 처음부터 끝까지 자바스크립트만 사용해서 프로그램이 가능하다는 점이다.
이 책은 (자바스크립트에 대한 기초 지식은 어느 정도 알고 있지만) MEAN 스택을 처음 접하는 사람에게 적합한 구성을 택하고 있다. 트위터 피드와 유사한 소셜 앱을 구축하려는 큰 목표를 중심으로 단계별로 글 쓰기, 글 읽기, 데이터베이스 설정, 인증과 로그인, 웹소켓으로 상호 대화성 높이기, NPM(서버 단)과 바우어(클라이언트 단) 패키지 관리 시스템을 사용한 의존성 관리, 빌드 자동화, 통합 테스트, 서버와 클라이언트 단위 테스트 방법을 설명한다. 그리고 마지막에는 PaaS와 IaaS에 배포하는 방법으로 마무리한다. 웹 브라우저 단에서 데이터베이스 단까지 전체를 다룰 뿐만 아니라, 구현부터 배포에 이르기까지 반드시 필요한 다양한 도구와 기법을 설명하고 있으므로 빠른 시간 내에 자바스크립트를 사용한 서버와 클라이언트 구현이 필요한 개발자에게 많은 도움이 될 것으로 확신한다.
이 책을 읽고 나서 MEAN에 대한 감을 잡으면 각각의 기술에 대해 세부적으로 파고들 필요가 있다. 비동기식 프로그래밍, 사건 구동 방식, MVVM(Model-View-ViewModel), 의존성 주입, 의존성 관리와 같은 복잡한 개념으로 인해 학습 곡선이 상당히 가파르기 때문이다. 다행스럽게도 최근에는 노드뿐만 아니라 AngularJS에 대한 저서와 번역서들도 많이 출간되고 있기 때문에 필요한 정보를 얻기에 어려움이 없을 것이다. 아무쪼록 MEAN 스택을 사용해 생산성을 높이고 성능과 확장성도 덤으로 얻는 좋은 성과를 얻기 바란다. 새로운 개발 세상에 온 독자 여러분을 환영한다!
(/ '옮긴이의 말' 중에서)

저자소개

제프 디키(Jeff Dickey) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

샌 프란시스코와 로스앤젤레스에서 여러 해에 걸쳐 스타트업 경력을 쌓았으며 전체를 다룰 줄 아는 풀 스택(full-stack) 웹 개발자다. 제프는 프로젝트를 성공리에 완수하고, 대규모 시스템을 유지 보수하며, 개발 팀을 이끌어왔다. 주요 웹 플랫폼 대다수에서 10년 이상 쌓은 경험을 토대로, 애플리케이션 제작에 필요한 최신 기술을 끊임없이 탐구하고 있다. 현재는 허로쿠(Heroku)에서 첫 CLI 개발자로 일하고 있다. 또한 제너럴 어셈블리(General Assembly)에서 백엔드 웹 개발 코스도 가르친다.

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

포항공과대학교 컴퓨터공학과 학부와 컴퓨터공학과 대학원을 졸업했다. 블로그 '컴퓨터 vs 책(http://jhrogue.blogspot.com)'을 운영하고 있다. 옮긴 책으로 에이콘출판사에서 펴낸 [조엘 온 소프트웨어], [초난감 기업의 조건], [리눅스 시스템 관리 완벽 가이드], [코드로 읽는 리눅스 디바이스 드라이버], [악성코드와 멀웨어 포렌식], [아파치 Solr 4 구축과 관리] 등이 있다.

이 상품의 시리즈

에이콘 웹 프로페셔널 시리즈(총 69권 / 현재구매 가능도서 54권)

펼쳐보기

리뷰

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만원이상 구매 시 무료배송)

업체직접배송상품 구매

업체별 상이한 배송비 적용