반응형
Node.js
지금까지 회사, 개인프로젝트를 진행할 때, 스프링을 항상 이용해왔었지만, 새로운 토이프로젝트에서는 Node.js를 이용해보고자 합니다.
그래서 먼저 Node.js를 공부하기 위해 인프런의 우아한형제들에서 개발하고 계신 김정환님의 강의를 수강하며 내용을 정리해 보고자 합니다.
- 인프런의 [테스트주도개발(TDD)로 만드는 NodeJS API 서버] 강의
NodeJs의 특징
- 브라우저 밖에서 자바스크립트 코드 실행 가능.
- 크롬에서 사용하는 V8 엔진 사용.
- 이벤트기반의 비동기 I/O 프레임웍크.
- 모듈 시스템이 존재.
이벤트 기반의 비동기 I/O 프레임워크
반응형
모듈 시스템
- 브라우저에서는 윈도우 컨텍스트를 사용하거나, RequireJS같은 의존성 로더를 사용함.
- 노드는 파일형태로 모듈을 관리할수 있는 CommonJS로 구현.
- 기본 모듈 : require('http')와 같이 기본적으로 제공하는 모듈
- 써드파티 모듈 : 응용프로그램과 무관한 제 3자에 의해 개발된 모듈
- 사용자 정의 모듈 : 직접 만든 모듈
이벤트기반의 비동기 I/O
- readFile() vs readFileSync()
const fs = require('fs');
//동기
const syncData = fs.readFileSync('./data.txt', 'utf8');
console.log('syncData', syncData);
//비동기
const asyncData = fs.readFile('./data.txt', 'utf8', function(err, data) {
console.log('data', data);
});
console.log('asyncData', asyncData); // undefined
Thank you!
반응형
'Language > Node.js' 카테고리의 다른 글
[NodeJS Error] Windows에서 npm ERR! gyp gypERR! find Python Python is not set from environment variable PYTHON 해결방법 (0) | 2022.07.15 |
---|---|
[TDD기반 Node.js 공부하기] 05. macha, should, superTest 사용하기 (0) | 2022.07.14 |
[TDD기반 Node.js 공부하기] 04. npm이란? (0) | 2022.06.21 |
[TDD기반 Node.js 공부하기] 03. ExpressJS 기초 (0) | 2022.06.13 |
[TDD기반 Node.js 공부하기] 02. Node.js 실행하기 (0) | 2022.06.11 |