본문 바로가기
카테고리 없음

npm과 yarn의 차이

by nh_3521099031483 2024. 5. 16.

NPM vs Yarn

 

- npm : Node module을 관리하기 위해서 만들어진 근본 툴이라고 생각하면 된다.

node를 설치하면 자동적으로 설치가 되서 node -v로 체크가 가능하다.

npm이라는 툴이 굉장히 좋은 툴이지만 좀 느린 편이다.

느린 이유는 지금은 해결이 되었을지 모르지만 npm은 순차적 처리가 기본이다.

설치해야 될 모듈이 100개면 100개를 하나씩 다 설치하는 구조이다.

 

- yarn : 페이스북에서 만든 오픈소스, 훨씬 빨리 모듈들을 설치하는 방식으로 구현되어 있다.

패키지 인스톨 속도도 빠르고, 관리할 때 에러가 나오는 경우도 좀 적다.(명령어도 짧아서 편하다 ㅋㅋ)

 

둘 다 좋은 툴이고 어떤걸 사용해도 상관은 없다.

다만 나 같은 초보개발자들이 주의해야 할 점은 하나를 사용하면 그거를 계속 사용해야 한다는 것이다.

프로젝트마다 하나의 패키지 매니징 도구가 들어가야 한다.

 

package-lock.json(npm 설치시 생성)

yarn-lock.json(yarn 설치시 생성)

이 두개가 섞이게 되면 해당 프로젝트는 어떤 모듈을 사용해서 어떤 패키지 관리 도구가 사용되었는지 알 수가 없게 된다.

만약 npm을 사용하고 있다고 하면, .gitignore파일에다가 yarn-lock.json을 넣어놓고 package-lock.json는 삭제하면 안된다.

lock파일은 하나만 남겨놓고 이 프로젝트가 어떤 패키지 매니징 툴이 사용되었는지 알 수 있다.

 

- $ yarn add moment

- 화면이 멈추는 현상, 설치 중 멈추는 현상

- Cache 문제 Cache를 초기화 하는 것이 답이 되는 경우가 많다

- 또는 node_module 디렉터리를 한 번 삭제했다가 install하면 되는 경우도 많다