package.json
파일에 들어가면 dependencies
와 devDependencies
를 볼 수 있다.
dependencies는 프로젝트 작업 중에 npm install
명령어를 통해서 설치한 라이브러리들이 들어가 있다. 우리가 애플리케이션을 배포할 때 사용할 라이브러리들이 담겨있는 곳이다. 애플리케이션의 동작을 도와주는 라이브러리들이 저장된다.
dependencies에 설치된 라이브러리는 배포할 때 포함된다.
devDependencies에는 애플리케이션 동작과 직접적인 연관은 없지만, 개발할 때 필요한 라이브러리를 설치하면 된다. 즉, 어플의 로직과는 직접적인 연관이 없는 라이브러리들이 설치하면 된다는 뜻이다.
devDependencies에 설치를 하려고 할 때는 npm i somethis -D
를 붙여서 설치를 한다. 뒤에 -D
를 붙이면 dev
에 넣겠다는 말이다.
devDependencies에 설치된 라이브러리는 개발할 때 필요한 라이브러리기 때문에 배포할 때 포함되지는 않는다. 때문에 어플의 로직과 연관이 없다고 판단되는 라이브러리가 있다면 dev에 넣는 것이 좋다.
eslint
, prettier
등이 로컬 개발 단계에서만 사용되는 대표적인 예시라고 할 수 있다.
dependencies
npm install 라이브러리명
devDependencies
npm install 라이브러리명 --save-dev
혹은 npm install 라이브러리명 -D
배포할 때 어떤 라이브러리가 포함되는지 구분해서 설치해 줘야 빌드 시간도 줄이고, 배포할 때 불필요한 라이브러리를 포함시키지 않아도 될 것이다.