tnqlscho 95 2023. 3. 24. 00:28

이때까지 package.json에 들어가 있는 내용에 대해 잘 모르고

그냥 clonecoding때 쓸 라이브러리들을 무지성으로 받았는데

오늘 갔던 회사 면접에서 면접관님들께서 velog 1차 clonecoding이 담긴 git을 훑어봐 주시고

피같은 어드바이스를 해주셨다. ( 감사합니다..! 면접관님🥹 )

 

그래서 또 잊지않게 기록해보는

package.json에 dependencies와 devDependencies의 라이브러리 분리

 

* dependencies

배포할때 포함되는 라이브러리가 들어오는 곳으로

애플리케이션의 동작을 도와주는 라이브러리들이 저장된다.

npm install [라이브러리명]

으로 설치하면 dependencies에 들어간다.

 

*devDependencies

배포할때 포함되지 않는 라이브러리가 들어오는 곳으로

애플리케이션의 동작에는 직접적인 연관은 없지만 개발할때 필요한 라이브러리들이 저장된다.

npm install [라이브러리명] -D
// 또는
npm install [라이브러리명] --save-dev

으로 설치하면 devDependencies에 들어간다.

보통 eslint나 prettier같은것들은 devDependencies에 설치한다.

 

* dependencies / devDependencies로 라이브러리를 분리해서 설치하는 이유

애플리케이션을 배포할 때 devDependencies에 있는것들은 제외하고 빌드되기 때문이다.

만약 분리하지 않으면 빌드되는 속도가 불필요한 라이브러리가 많은만큼 느려지기 때문에 분리하는것이 좋다.

 

 

구글링을 하면서 정리해본거라 틀린부분이 있을 수 있을것 같아서

좀더 찾아보고 틀린부분이 있다면 다시 수정해야겠다.