스크랩

구간

50가지 예제로 배우는 노드 프로그래밍 - acorn+PACKT 시리즈

원제 : Node Cookbook

데이비드 마크 클레멘츠 저 | 홍연택,정대원 역 | 에이콘출판 | 2013년 09월

미리보기 북트리

정가
$70.00
판매가
$56.70 (19%↓) 최저가 보상
적립금
$1.13 (2%P)
출고예상일
2026년 10월 08일 수령예상일 안내
북카트 담기 바로구매하기 위시리스트담기

평점 -  ·  리뷰 0

리뷰 쓰기

ISBN : 9788960774544 / 424쪽 188 x 235 (㎜)

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

책 소개

출판사 리뷰

★ 이 책에서 다루는 내용 ★

■ 노드 모듈을 직접 작성하고 배포하기
■ 다양한 데이터베이스에 연결
■ 데이터 스트림 처리
■ 파일 업로드와 POST 데이터 다루기
■ 익스프레스 프레임워크를 사용한 빠른 웹 개발
■ 보안, 암호화, 인증 기술
■ 무거운 연산을 처리하는 모범 사례


★ 이 책의 대상 독자 ★

자바스크립트에 대한 약간의 지식이 있고, 빠르고 효과적이며 확장 가능한 클라이언트-서버 솔루션을 구축하길 원하는 사람에게 추천한다. 이미 노드를 접한 경험이 있다면 개인 기술 발전에 도움이 될 것이며, 개발 경험이 없더라도 노드를 시작하는 좋은 출발점이 될 것이다.


★ 이 책의 구성 ★

1장. 웹 서버 만들기에서는 동적 콘텐츠와 정적 콘텐츠를 제공하는 방법과 메모리에 파일 캐시하기, 디스크로부터 큰 파일을 스트리밍하기, 웹 서버의 보안 처리를 다룬다.

2장. HTTP 객체 살펴보기에서는 POST 요청을 받아 처리하는 방법과 파일 업로드, 노드를 HTTP 클라이언트로 사용하기, 다운로드 속도를 조절하는 방법을 설명한다.

3장. 데이터 직렬화 처리에서는 애플리케이션에서 데이터를 브라우저로 전송하는 방법과 서드파티 API에 사용하기 위해 XML, JSON 포맷으로 변환하는 방법을 설명한다.

4장. 데이터베이스 인터페이스에서는 레디스(Redis)나 카우치디비(CouchDB), 몽고디비(MongoDB), MySQL, 또는 일반 CSV 파일 같은 영속적인(persistent) 데이터 저장소와의 연동 방법을 다룬다.

5장. 웹소켓을 사용해 AJAX 뛰어넘기에서는 최신 브라우저에서 제공하는 웹소켓을 사용해 실시간 애플리케이션을 만들고 롱폴링(long-polling)과 기타 방법들을 Socket.io를 사용해 대체하는 방법을 설명한다.

6장. 익스프레스를 사용한 쾌속 개발에서는 익스프레스(express)프레임워크를 활용해 빠르게 웹 개발을 진행한다. 또한 템플릿 언어와 LESS, 스타일러스(Stylus) 같은 CSS 엔진에 대해 알아본다.

7장. 보안, 암호화, 인증 구현에서는 강력한 암호 해시(Hash)를 생성하는 암호화 모듈을 사용하는 방법과 크로스사이트 요청 위조(cross-site request forgery) 공격으로부터 사용자를 보호하는 방법, SSL 보안 웹 서버를 설정하는 방법을 알아본다.

8장. 네트워크 패러다임 통합에서는 메일을 전송하는 방법, 메일 서버를 구축하는 방법, SMS 메시지 전송, 가상 호스트 구현, 원시 TCP와 관련된 내용들을 다룬다.

9장. 자신만의 노드 모듈 작성에서는 테스트 스위트(suite)를 생성하는 방법과 노드 모듈을 직접 작성하고 리팩토링하는 방법, 개선하고 확장하는 방법, 배포하는 방법을 다룬다.

10장. 노드 애플리케이션의 배포에서는 실제 서버에 애플리케이션을 배포한 후 장애 복구 기술을 사용해 서비스를 유지하고 지속적인 배포(continuous deployment)를 적용하는 워크플로우를 구현하거나 단순히 PaaS(Platform as a Service)에 배포하는 방법을 다룬다.


★ 저자 서문 ★

오늘날 웹에서 비동기 이벤트 중심 프로그래밍의 원칙은 효과적인 실시간 애플리케이션을 구축하고 확장성을 보장하는 것이다. 90년대부터 서버 측에도 자바스크립트가 도입됐고, 최근 개발된 노드(Node)는 미래의 PHP라는 찬사를 받으며 많은 커뮤니티로부터 각광을 받고 있다.

이 책은 기존 자바스크립트 기술을 서버 프로그래밍에 적용하는 방법을 설명한다. 간단한 예제와 코드를 제공함으로써 다양한 상황이나 환경에 따른 문제를 해결하는 방법과 보안 실수를 회피하는 방법 등을 설명한다.

간단한 웹 서버를 직접 만드는 것을 시작으로 점차 웹 애플리케이션과 커맨드 라인 애플리케이션, 노드 모듈을 작성하는 실용적인 방법을 다룬다. 또한 웹 소켓을 사용해 MySQL, 몽고디비(MongoDB), 레디스(Redis) 같은 다양한 백엔드 데이터베이스와 SMTP 같은 네트워크 프로토콜에 접근하는 방법을 살펴본다. 게다가 데이터 스트림 처리와 보안 처리, 노드 모듈을 직접 작성하는 방법과 작성한 웹 애플리케이션을 실행하고 운영하는 방법도 알아본다.


★ 옮긴이의 말 ★

구글, 유튜브, 페이스북 같은 성공적인 서비스를 지켜보며 웹이 가진 무한한 가능성에 공감하는 이들이 많아졌다. 웹 페이지는 링크를 포함하는 단순한 문서를 넘어 애플리케이션으로 자리 잡았고, 그 구조는 더 복잡해지고 사용자의 요구 사항 또한 높아졌다.

이러한 시대에 개발자들에게는 끊임없는 학습이 요구되며, 프론트엔드와 백엔드 영역을 나누지 않고 전방위로 개발하는 풀스택(full-stack) 개발자가 활약할 시대가 왔다. 노드의 서버 측 자바스크립트라는 특징은 기존 웹 클라이언트가 자바스크립트로 구현돼 있을 때 동일한 언어로 프론트엔드와 백엔드를 다룰 수 있다는 점에서 매우 매력적이다. 또한 노드의 민첩함은 아이디어를 빠르게 구현하는 데 적합하다.

노드 커뮤니티는 젊고 스마트한 개발자들이 참여하면서 급속도로 성장 중이다. 노드 팀은 빠르게 새 버전을 릴리즈하며, 마치 온갖 종류의 소프트웨어들이 모두 노드로 개발될 것만 같은 분위기다. 노드 생태계는 하루가 멀다 하고 변화하는 중이다. 이런 분위기에 동참하는 것만으로도 개인 역량 발전에 많은 도움이 될 것이다.

이 책 『노드 프로그래밍』은 간단한 웹 서버 구현을 시작으로 웹 애플리케이션과 커맨드라인 애플리케이션, 노드 모듈을 구현하는 방법뿐 아니라 모듈 설치 방법, 배포 방법, 서비스를 운영하는 방법 등 노드 프로그래밍의 전반적인 이슈를 소개한다. 또한 기존 프론트엔드 개발자에게는 익숙한 자바스크립트로 서버 프로그래밍의 기초를 배우는 데 좋은 시작점이 될 것이다.

저자 소개

북 아일랜드에서 웹 에이전시를 운영 중이다. 어릴 때부터 프로그래밍과 컴퓨터에 흥미가 많아, 9살에는 처음 접한 언어인 베이식(BASIC)으로 프로그래밍 실력을 키웠으며, 12살부터 자바스크립트를 시작했다. 10대에는 리눅스와 PHP에 관심을 가졌다.
현재 20대인 마크는 기술을 비즈니스에 적용해 맞춤형 웹사이트, 창고 관리 시스템에 전자상거래 솔루션을 통합하는 등 다양한 서비스를 구축한다. 다재다능함과 강력한 인터페이스 때문에 주요 도구로 노드를 사용한다.
컴퓨터를 하지 않을 때는 노숙자 호스텔에서 봉사하거나 리빙리버스(Living Rivers) 예배 팀에서 베이스 연주자로 활동한다. 또한 여자 친구 맥신과 허스키 강아지 제시와 함께 시간을 보내는 것을 좋아한다.
위스콘신 오클레어에 있는 어플라이드 데이타 컨설턴트(Applied Data Consultants)에서 수석 웹 개발자로 일하고 있다. 마크는 클라이언트와 서버 사이드 자바스크립트 커뮤니티에 적극적으로 참여하고 있다. 마크는 프로그래밍 언어와 패러다임을 공부하는 것을 즐기며 아크리눅스의 테마와 배경화면을 변경하기와 웹 개발의 최신 기술을 배우기를 좋아한다. 마크는 아름다운 아내, 두 아이와 함께 살고 있다.
호아킴 라센(Joachim Larsen)
새로운 기술을 배우고 새로운 방식으로 컴퓨터 카페를 위한 토탈 솔루션 시스템을 구축하는 것을 좋아한다. 윈도우 95 액티브 데스크탑 HTML, 삼바 백엔드에 게임 저장하기, 시디키 저장소를 구축해서 구매한 게임 타이틀 빠르게 즐기기, 네트워크 기반의 CD 이미지 마운트, 윈도우 레지스트리 조작하기 등을 적용했다. 자유분방한 호아킴은 해외에서 일을 했으며 개인 사용자가 안정적으로 인터넷에 접속할 수 있도록 위성 인터넷 연결 박스를 구축하고 설치했다.
최근에는 자바스크립트 리치 웹 애플리케이션을 사용해서 사용자 경험을 빠르게 하는데 관심을 갖고 있다.
호아킴은 http://javascriptjabber.com/ 팟캐스트를 공동 운영하고 있으며 장난삼아 소규모 식량 생산 시스템에 전자공학을 적용하고 있다.

‘니들형 탐침을 사용한 눈의 비등방성 열전도율 측정’ 논문으로 알레스카 페어뱅크 대학에서 기계 공학 석사학위를 받았다. 조슈아는 처음 매트랩과 파이썬을 주로 사용했으며 최근에는 노드를 배우고 있다. 최근에는 애완새 코벤과 따뜻한 캘리포니아로 이주했으며 스타트업에서 일하고 있다.



 

역자 소개

프로그래밍 언어를 좋아하는 개발자로, 프로그래밍을 더 잘 할 수 있는 방법에 관심이 많으며 언제나 더 좋은 방법이 있다고 생각한다. 꿈의 에디터인 Emacs와 해피해킹 키보드의 사용을 즐긴다. 훌륭한 동료들과 함께 네이버오피스를 개발했다. 『Ext JS 4 First Look 한국어판』(에이콘출판, 2012년)을 번역했다.

직장인이 아닌 해커가 되고 싶은 개발자다. 네이버와 카카오 등에서 웹오피스, 소셜 네트워크 서비스, 채팅 서비스 등을 개발했다. 현재는 네이버에서 데이터 타입 기반 동기화 플랫폼과 오픈소스 썸머노트를 개발하고 있다.


 

머리말

★ 저자 서문 ★

오늘날 웹에서 비동기 이벤트 중심 프로그래밍의 원칙은 효과적인 실시간 애플리케이션을 구축하고 확장성을 보장하는 것이다. 90년대부터 서버 측에도 자바스크립트가 도입됐고, 최근 개발된 노드(Node)는 미래의 PHP라는 찬사를 받으며 많은 커뮤니티로부터 각광을 받고 있다.

이 책은 기존 자바스크립트 기술을 서버 프로그래밍에 적용하는 방법을 설명한다. 간단한 예제와 코드를 제공함으로써 다양한 상황이나 환경에 따른 문제를 해결하는 방법과 보안 실수를 회피하는 방법 등을 설명한다.

간단한 웹 서버를 직접 만드는 것을 시작으로 점차 웹 애플리케이션과 커맨드 라인 애플리케이션, 노드 모듈을 작성하는 실용적인 방법을 다룬다. 또한 웹 소켓을 사용해 MySQL, 몽고디비(MongoDB), 레디스(Redis) 같은 다양한 백엔드 데이터베이스와 SMTP 같은 네트워크 프로토콜에 접근하는 방법을 살펴본다. 게다가 데이터 스트림 처리와 보안 처리, 노드 모듈을 직접 작성하는 방법과 작성한 웹 애플리케이션을 실행하고 운영하는 방법도 알아본다.


★ 옮긴이의 말 ★

구글, 유튜브, 페이스북 같은 성공적인 서비스를 지켜보며 웹이 가진 무한한 가능성에 공감하는 이들이 많아졌다. 웹 페이지는 링크를 포함하는 단순한 문서를 넘어 애플리케이션으로 자리 잡았고, 그 구조는 더 복잡해지고 사용자의 요구 사항 또한 높아졌다.

이러한 시대에 개발자들에게는 끊임없는 학습이 요구되며, 프론트엔드와 백엔드 영역을 나누지 않고 전방위로 개발하는 풀스택(full-stack) 개발자가 활약할 시대가 왔다. 노드의 서버 측 자바스크립트라는 특징은 기존 웹 클라이언트가 자바스크립트로 구현돼 있을 때 동일한 언어로 프론트엔드와 백엔드를 다룰 수 있다는 점에서 매우 매력적이다. 또한 노드의 민첩함은 아이디어를 빠르게 구현하는 데 적합하다.

노드 커뮤니티는 젊고 스마트한 개발자들이 참여하면서 급속도로 성장 중이다. 노드 팀은 빠르게 새 버전을 릴리즈하며, 마치 온갖 종류의 소프트웨어들이 모두 노드로 개발될 것만 같은 분위기다. 노드 생태계는 하루가 멀다 하고 변화하는 중이다. 이런 분위기에 동참하는 것만으로도 개인 역량 발전에 많은 도움이 될 것이다.

이 책 『노드 프로그래밍』은 간단한 웹 서버 구현을 시작으로 웹 애플리케이션과 커맨드라인 애플리케이션, 노드 모듈을 구현하는 방법뿐 아니라 모듈 설치 방법, 배포 방법, 서비스를 운영하는 방법 등 노드 프로그래밍의 전반적인 이슈를 소개한다. 또한 기존 프론트엔드 개발자에게는 익숙한 자바스크립트로 서버 프로그래밍의 기초를 배우는 데 좋은 시작점이 될 것이다.

목차

top