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 |