Node.js

이재진·2020년 11월 15일
0

Server & Node

목록 보기
1/2
post-thumbnail

노드는 크롬 v8엔진으로 만들어진 자바스크립트 런타임이다.

v8엔진
-자바스크립트를 기계어로 컴파일 해준다.

런타임
-프로그래밍 언어가 구동되고 있는 환경.

다시 말해 Node.js 는 자바스크립트를 컴파일 해주는 엔진으로 빌드 된 자바스크립트가 구동중인 환경이다.

이벤트 기반 및 논블로킹 I/O 모델.

-유저의 클릭이나 네트워크에 리소스를 요청 하는 이벤트가 논블로킹으로 이루어지는 Inpu Output model.

이벤트
-유저의 버튼 클릭이나 네트워크에 리소스를 요청 하는 것 등.

논블로킹 vs 블로킹

블로킹
-다음 함수의 실행이 현재 함수의 종료 이후에 이루어 지는 것.

논블로킹
-다음 함수의 실행이 현재 함수의 종료를 기다리지 않음.

따라서 Node.js는 자바스크립트를 컴파일 하여 구동하고 이벤트 기반의 논블로킹 모델로 속도가 빠르다.

Node core modules
-별도의 설치를 하지 않아도, node 상에서 쓸 수 있는 모듈이 있음.

  • node와 함께 번들링 되어있는 모듈
  • require(")방식으로 사용 할 수 있다.
  • ex) fs, http, url, path

NPM (Node Package Manager)

-세계에서 가장 큰 오픈 소스 라이브러리 생태계 중 하나

package.json에 그 정보들이 모두 담겨 있다.

package.json?

-npm을 활용하기 위한 정보들이 모여 있는 파일이며 프로젝트 전반에 관한 정보가 들어있다.

profile
개발블로그

0개의 댓글