반응형
|
예제 소스 : http://www.hanbit.co.kr/exam/2218
1부 Node.js
2장. 노드란
node -v : 버전확인
- node : > (RERL 실행)
- node 파일.js : 파일 실행
- 비차단 비동기식 I/O 제공
3장. 모듈과 노드 패키지 관리자
npm (node package manager)
- npm init : package.json 초기화 명령
- npm install : package.json 파일에 열거된 모든 모듈을 지역 node_modules 디렉터리에 설치
- npm install <모듈 이름> --save : package.json에 자동 저장
- require() : 웹 브라우저에서는 사용할 수 없는 노드 전용 함수
- 노드에서 자동으로 감싸진 함수
(function (exports, require, module, __filename, __dirname){
// 우리가 작성한 코드가 이 안에 들어가게 된다.
});
모듈 캐시 염두
- npm link : 전역 심벌릭 링크 설정, 외부 모듈을 지역 모듈처럼 사용할 수 있음
4장. 노드 프로그래밍 모델
자바스크립트 앱은 한 번에 하나의 작업만 수행 가능(단일 스레드)
- 노드 : 비동기식 앱, 비동기식 I/O를 위한 설계
- 동기식 코드 오류 처리 : try...catch 문 사용
5장. 핵심 모듈
process.argv 배열 : 노드 앱으로 넘어온 모든 명령행 인자를 얻음
- __filename : 파일 경로와 파일명
- __dirname : 파일 경로
- process.cwd() : 현재 디렉토리 접근
- process.chdir() : 현재 작업 디렉토리 변경
- 파일 읽기 : readFile(), readFileSync()
- 파일 쓰기 : writeFile(), writeFileSync(), flag: wx / a
- https://nodejs.org/api/fs.html#fs_fs_open_path_flags_mode_callback
- 라우트 : HTTP 동서와 요청 URL의 조합
2부 MongoDB
7장. 아이템
db : 현재 db 이름 출력
- use <name> : db 사이를 전환하는 use 명령
- show dbs : 사용 가능한 모든 db를 표시하는 명령
- insert(), find(), findOne(), limit(), update(), remove(), drop()
- show collections; : drop() 호출 직후 사용 가능한 컬렉션 출력
- db.dropDatabase() : 주의 깊게 사용!!
3부 Express
11장. Express
Express : 핵심 노트 모듈을 둘러싼 경량 웹 앱 프레임워크를 제공
most starred packages ▶ https://www.npmjs.com/browse/star
왜 프레임워크를 써야하는가?
유지보수성
모듈 통합
소프트웨어 구조
익스프레스 구성요소
라우터
미들웨어 : function(req, res, next) 형태의 자바스크립트 함수
req : 요청 객체
res : 응답 객체
next : 콜백 함수
라우트
반응형
'지니월드 > 서적' 카테고리의 다른 글
[책] 누워서 읽는 알고리즘 (0) | 2016.12.02 |
---|---|
[책] 제대로 배우는 Backbone.js 프로그래밍 (0) | 2016.08.05 |
[책] 모바일 우선주의 (0) | 2016.07.19 |
[책] 코딩을 지탱하는 기술 (0) | 2016.05.10 |
[책] (사용자를) 생각하게 하지마! / 스티브 크룩 (0) | 2016.02.24 |