책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 웹 서비스/웹 프로그래밍
· ISBN : 9788960772502
· 쪽수 : 228쪽
책 소개
목차
1장 노드 개요
___노드의 능력
______서버 측 자바스크립트
___노드를 사용해야 하는 이유
______스레드 기반 아키텍처와 비동기 이벤트 기반 아키텍처
______성능과 활용
______더 적은 서버 활용과 그린 웹 호스팅
___'노드' 용어
___정리
2장 노드 설치
___시스템 요구 사항
___POSIX 시스템(리눅스, 솔라리스, 맥 등)에 설치
______미리 설치해야 할 것
___맥 OS X 환경에 맞는 개발자 도구 설치
______홈(HOME) 폴더에 설치
_________홈 폴더에 설치해야만 하는 이유
______시스템 전체 폴더에 설치
______MacPort로 맥 OS X에 설치
______homebrew로 맥 OS X에 설치
______패키지 관리 시스템으로 리눅스에 설치
______여러 개의 노드 동시 설치
___설치 확인 명령
______노드 커멘드라인 툴
______간단한 스크립트 작성과 실행
______노드 서버 실행
___노드 패키지 매니저 설치
___시스템 시작과 동시에 노드 서버 시작
______멀티 코어 시스템에서 모든 CPU 사용
___정리
3장 노드 모듈
___모듈이란?
______노드 모듈
______노드가 require('module')을 해석하는 방법
_________모듈 식별자와 패스명
_________애플리케이션의 로컬 모듈
_________애플리케이션 안에 여러 버전의 모듈 넣기
_________require.paths를 이용한 시스템 전체 모듈
_________복합 모듈
___npm 노드 패키지 매니저
______npm 패키지 포맷
______npm 패키지 찾기
______npm 명령 사용
_________npm 명령 도움말 얻기
_________패키지 정보 보기
_________패키지 설치
_________설치된 패키지 사용
_________현재 설치된 패키지 보기
_________패키지 스크립트
_________설치된 패키지 내용 탐색과 수정
_________설치된 패키지 중 오래된 패키지 업데이트
_________설치된 패키지 제거
_________패키지 개발과 퍼블리싱
_________npm 환경 설정
______패키지 버전 문자열과 범위
______CommonJS 모듈
_________모듈 캡슐화 예제
___정리
4장 웹 애플리케이션 응용
___수학 마법사 제작
______웹 프레임워크를 사용하거나 사용하지 않기
___프레임워크 없이 수학 마법사 구현
______노드의 라우팅 요청
______URL 쿼리 파라미터 핸들링
______곱셈 만들기
______다른 수학 기능 만들기
______수학 마법사 확장
______오래 걸리는 계산(피보나치 수)
______완벽한 웹 서버에서 빠진 기능
______Connect로 수학 마법사 구현
______Connect 설치와 설정
______Connect 프레임워크로 접속
___Express 프레임워크로 수학 마법사 구현
______Express 수학 마법사 구현
______에러 처리
______URL 파라미터화와 데이터 서비스
_________Express에서 URL을 파라미터로 만들기
_________수학 계산 서버(와 클라이언트)
_________수학 서버로 수학 마법사 다시 작성
___정리
5장 간단한 웹 서버, 이벤트 이미터, HTTP 클라이언트
___이벤트 이미터를 이용해 이벤트 주고받기
______EventEmitter 이론
___HTTP 스니퍼: HTTP 대화 엿듣기
___기본 웹 서버 구현
______기본 서버 구현
_________기본 서버 코어(basicserver.js)
_________파비콘 핸들러(faviconHandler.js)
_________스태틱 파일 핸들러(staticHandler.js)
_________기본 서버의 설정(server.js)
_________Basic Server에 가상 호스트 설정
_________기본 서버의 짧은 URL 모듈
___MIME 타입과 mime npm 패키지
___쿠키 다루기
___가상 호스트와 요청 라우팅
___HTTP 클라이언트 요청 만들기
___정리
6장 데이터 스토리지와 검색
___노드를 위한 데이터 스토리지 엔진
___SQLITE3: 가벼운 인프로세스 SQL 엔진
______설치
______sqlite3로 노트 애플리케이션 구현
_________데이터베이스 추상 모듈: notesdb-sqlite3.js
_________데이터베이스 설치: setup.js
_________콘솔에 노트 출력: show.js
_________노트 웹 애플리케이션: app.js
_________노트 애플리케이션 템플릿
_________sqlite3 노트 애플리케이션 실행
_________에러 디버깅과 핸들링
______다른 SQL 데이터베이스 사용
___몽구스: 몽고DB와 연결되는 노드 인터페이스
______몽구스 설치
______몽구스로 노드 애플리케이션 구현
_________데이터베이스 추상 모듈: notesdb-mongoose.js
_________데이터베이스 초기화: setup.js
_________콘솔에 노트 출력: show.js
_________애플리케이션에 노트 넣기: app.js
______몽고DB를 지원하는 다른 데이터베이스 모듈
___사용자 인증 처리 훑어보기
___정리