본문 바로가기

Node.js

package.json에 있는 "dependencies"의 역할 및 npm install(ft. 모듈이란?)

dependencies를 설명하기 전에, 먼저 모듈에 대해서 간단하게 설명을 해야할 것 같다.

모듈이란 "독립된 기능을 갖는 것(함수, 파일)들의 모임", "애플리케이션을 구성하는 개별적 요소로서 재사용 가능한 코드조각"을 말한다.

일반적으로 기능을 기준으로 파일 단위로 분리한다.

(출처:모던 자바스크립트 Deep Dive)

 

모듈은 크게 2가지로 나눌 수 있다.

1> 외장 모듈

   - 일반 개발자들이 만들어놓은 모듈(라이브러리)

   - 외장모듈을 사용하기 위해서는 npm(Node Package Manager)을 사용.

2> 내장 모듈

  - Node.js를 설치하고 나면, 그 안에 이미 내장되어 있는 모듈.

  - 내장 모듈은 이미 존재하고 있으므로 npm을 사용하지 않는다.

(출처:https://victorydntmd.tistory.com/16)

 

본격적으로, 

1. package.json 파일에 적혀있는 "dependencies"는 뭘까?

 

우리가 사용하는, 또는 만들고 있는 애플리케이션이 '의존'하고 있는(즉, 부품으로 사용하고 있는) 외장 라이브러리들(혹은 외장 모듈)을 의미한다.

즉, 여기 있는 외장 모듈들을 설치해줘야지만 우리 애플리케이션이 잘 돌아간다는 의미이다.

 

 

2. 그렇다면 그 외장모듈들을 설치하려면?

--> 그때 사용하는 명령어가 바로 "npm install"

npm install이라는 명령어를 터미널창에 치고 엔터를 누르면,

 1) 명령을 실행시킨 곳에서 node.js의 npm(Node Package Manager)이 package.json이라는 파일을 찾는다.

 2) 그런 다음, 그 파일 안의 "dependencies"를 보고 필요한 모듈들을 인터넷에서 다운로드 받는다.

 3) 그 모듈들을 node_modules라는 디렉토리에 저장한다.

그림의 예시에 나와있는 것처럼, dependencies에 적혀있는 'mysql', 'sanitize-html'모듈 뿐만 아니라 이 모듈들이 의존하고 있는 다른 모듈들도 다 다운받는다.

 

 

**모든 글과 그림의 출처는 유튜브 영상 '생활코딩'입니다.

'Node.js' 카테고리의 다른 글

Node.js에 대하여  (0) 2023.11.26
Statesairline-Server  (0) 2021.09.27
mininode-server with Express  (0) 2021.09.24
mini-node server  (0) 2021.09.23
fs.readFile 메소드  (0) 2021.09.21