npm, npx, yarn의 차이

Siho·2025년 12월 16일

나는 패키지관리자로 npm을 사용하고 있었는데, npx는 무엇인지, yarn과는 무슨 차이가 있는지 궁금해져서 조사해보기로 했다.

Package Manager

프로젝트에 필요한 외부 라이브러리(패키지)를 설치, 업데이트, 관리하는 도구이다.

주요 역할

  • metadata 작성 및 관리
  • 모든 dependencies 일괄 설치 또는 업데이트
  • dependencies 추가, 업데이트, 삭제
  • 스크립트 실행
  • 패키지 publish
  • 보안 검사

npm

node.js의 패키기 관리자. npm 온라인 DB에 패키지를 등록하면 npm명령어로 패키지를 설치할 수 있다.

npx

패키지를 설치하지 않고도 실행할 수 있는 npm의 명령어다.
1회성으로 간편하게 실행하는 만큼 node_modules나 package.json에는 아무런 변화가 일어나지 않는다.
보일러 플레이트같은 변경사항이 잦은 패키지(ex. CRA)에 효과적이다.

yarn

2016년 페이스북에서 개발한 패키지 관리자로 npm의 성능, 보안적인 문제점을 개선하여 등장했다.
npm과 같은 javascript 패키지 매니저이지만
yarn은 yarn.lock이나 package.json으로 부터 설치만 하며, yarn.lock은 모든 디바이스에 같은 패키지를 설치하는 것을 보장하기 때문에 버전의 차이로 인해 생기는 버그를 방지해줄 수 있다.

무엇을 쓸까?

지금까지는 npm을 많이 써왔고 익숙하기도 하다.
최근에는 npm도 성능적인 부분은 yarn과 큰 차이가 안날 정도로 많이 개선되었다고 하니, 팀 상황에 맞추어 사용할 것 같다.
개인적으로는 yarn도 한번 사용해봐야겠다는 생각이 들었다. (무엇보다 로고가 귀엽다)

출처

https://youngmin.hashnode.dev/npm-yarn
https://devocean.sk.com/blog/techBoardDetail.do?ID=166592&boardType=techBlog
https://blog.naver.com/kimbooshop/223467781306

profile
Siho-ily

0개의 댓글