Node Package Manager
Node Package Execute
node.js 를 설치해서 사용하고 있다면
npm이 5.2.0 버전 이상일테고 npx가 기본적으로 설치되어 있을 것이다!
Yet Another Resource Negotiator
과거의 npm의 보안, 안정성, 속도 등의 여러 단점들을 보완하기 위해서 yarn이 나왔다.
npm은 순차적으로 설치를 하지만
yarn은 병렬적으로 설치하기 때문에 설치 속도에 차이가 있고,
캐시되어 있거나 재설치 경우에는 npm보다 2배 이상 빠른 속도를 가지고 있다고 한다.
패키지가 업데이트 된다면 npm, yarn은 패키지대로 따로 업데이트 시켜줘야한다.
npx는 실행할 때 마다 패키지를 최신 버전으로 다운로드하여 사용하기 때문에 관리하기가 쉽다는 장점이 있지만 최신 버전이라고해서 좋은것만은 아니다.
안정적이거나 특정 버전에 호환이 되는지 검증이 되지 않았을 수도 있기 때문에 프로덕션 환경에서는 특정 버전의 패키지를 명시적으로 설치하고 사용하는 것이 더 안정적일 수 있다.
결론적으로 개발환경이나 간단한 스크립트 실행에서는 npx가 편리하게 사용될 수 있지만, 프로덕션 환경에서는 정확하게 의존성 버전을 관리하는 것이 좋아 yarn을 추천한다!