책 제목 : Node.js, MongoDB, AngularJS를 이용한 웹 개발
책 관련 정보 : http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9791161752792&orderClick=LAG&Kc=
[ 목표 ]
더보기
기초 개념부터 제대로 이해하면서 공부하기
매일 이애한거 정리하고 공유하기
기본 개념편 (들어가며 내용)
* Node.js *
더보기
- 구글의 V8 자바스크립트 엔진을 바탕으로 한 개발 프레임워크
- 자바스크립트로 Node.js 코드를 작성 → 실행될 수 있게 V8이 기계어로 컴파일 한다. (V8은 무엇인가?)
- 웹서버와 서버 측 스크립트, 지원되는 모든 웹 애플리케이션 기능을 포함한 대부분의 서버 코드를 Node.js로 작성 가능
[ 장점 ]
- 단대단 자바스크립트 [ Javascript end-to-end ]
자바스크립트의 서버측 스크립트와 클라이언트 측 스크립트를 둘 다 작성 가능
- 이벤트 기반 규모 조절성 [ Event-driven scalability ]
웹 요청을 처리하는 특유의 로직 사용 기본 이벤트 모델을 이용해 웹 요청을 동일한 스레드에서 처리한다
- 기능 확장성 [ Extensibility ]
새로운 모듈 설치하고 추가하는 방법이 간단함
- 빠른 구현 [ Fast Implementation ]
* MongoDB *
더보기
- 가볍고 빠르며 규모 조절성의 뛰어난 NoSQL Database
[ 장점 ]
- 문서 지향 [ document orientation ]
데이터는 서버 측과 클라이언트 측, 양 쪽 스크립트에서 다루는 것과 유사한 형태로 저장됨
ex)
→ 데이터를 레코드 → 오브젝트 → 레코드 변경이 필요가 없다.
- 고성능 [ high performance ]
- 고가용성 [ high availability ]
- 뛰어난 규모 조절성 [ high scalability ]
- SQL 주입 금지 [ no SQL injection ] ⇒ 객체 형식으로 저장된다.
* AngularJS *
더보기
- 구글이 개발한 클라이언트 측 프레임워크
- 압축된 제이쿼리 라이브러리와 마찬가지로 자바스크립트로 작성된 프레임워크
- MVC 프레임워크를 사용해서 잘 설계된 좋은 구조의 웹 페이지와 애플리케이션을 구현할 수 있는 프레임워크를 제공
- 사용자 입력 처리 기능, 클라이언트 측 데이터 조작, 브라우저 뷰에 요소를 출력하는 방식 제어하는 기능 제공
[ 장점 ]
- 결합성 [ Data binding ]
강력한 범위 구조를 활용해 데이터를 HTML 요소로 완벽하게 결합
- 확장성 [ Extensibility ]
사용자 정의의 구현을 제공 → 쉽게 확장 가능
- 명료성 [ clean ]
- 재사용성 [ reusable code ]
- 지원성 [ support ]
- 호환성 [ compatibility ]