패키지 매니저

Boseong Choi·2023년 7월 8일
0

1. 패키지 매니저란?

프로젝트가 의존하고 있는 패키지를 효과적으로 설치, 갱신, 삭제할 수 있도록 도와주는 관리 도구다. 패키지 매니저인 npm pnpm yarn yarn berry 등에 대해 비교하고 장단점 및 사용 방법을 알아볼 예정이다.


2. npm

npm(노드 패키지 매니저/Node Package Manager)은 자바스크립트 프로그래밍 언어를 위한 패키지 관리자이다. 자바스크립트 런타임 환경 Node.js의 기본 패키지 관리자이다. 명령 줄 클라이언트(npm), 그리고 공개 패키지와 지불 방식의 개인 패키지의 온라인 데이터베이스(npm 레지스트리)로 이루어져 있다.

npm의 특징

  1. 널리 알려져 있고 생태계가 크며, 많은 패키지들을 포함하고 있다.
  2. 많은 툴과 서비스에서 npm을 지원하고 있다.
  3. package.json 파일을 사용하여 의존성을 관리할 수 있다.

주요 명령어

  • npm init : package.json 생성

  • npm help : 명령어를 모를 때, 역할, 옵션 등을 알 수 있다.

  • npm install, npm i : npm 모듈 로컬 설치

    --save or -S : dependencies에 추가
    --save-dev or -D : devDependencies에 추가
    -g : global 패키지에 추가

  • npm ls : 패키지를 조회한다.

  • npm -v, node -v, npm -version : 버전 확인

  • npm start : package.json의 scripts에 있는 start 명령어를 실행


3. pnpm

pnpm은 npm의 대안으로 개발된 패키지 매니저다. pnpm은 npm과 유사한 기능을 제공하지만, 의존성을 설치할 때 중복된 패키지를 공유함으로써 디스크 공간을 절약할 수 있다.

디스크 공간을 절약할 수 있으며, 여러 프로젝트 간의 의존성을 효율적으로 공유할 수 있다.

pnpm의 특징

  1. 설치 시간이 단축되며, 컴퓨터의 리소스 사용을 줄일 수 있다.
  2. 사용 방법이 npm과 매우 비슷하다. 프로젝트 폴더에서 pnpm 명령어를 실행하여 패키지를 설치하고 관리할 수 있다.

pnpm CLI 명령어


04. yarn

Yarn(얀)은 Node.js 자바스크립트 런타임 환경을 위해 페이스북이 2016년 개발한 소프트웨어 패키지 시스템이다. npm 패키지 관리자의 대안으로서 대형 코드의 일관성, 보안, 성능 문제를 해결하고자 개발되었다.

npm과의 비교

  • Yarn은 로컬 캐시로부터 패키지를 설치할 수 있다.
  • Yarn은 패키지 버전을 강력하게 바인딩한다.
  • Yarn은 데이터 무결성 보장을 위해 체크섬을 사용하는 반면 npm은 SHA-512를 사용하여 다운로드된 패키지의 데이터 무결성을 검사한다.
  • Yarn은 병렬로 패키지를 설치하는 반면 npm은 한 번에 하나의 패키지를 설치한다.

주요 명령어

  • yarn init -y : yarn 초기 설정. - y 옵션을 붙이면 처음 생성할 때 이것 저것 물어보는 것을 skip할 수 있다.
  • yarn add package-name : yarn의 패키지 설치하기
  • yarn global add <package...> : yarn에서 전역 설치하기.
profile
Frontend Developer

0개의 댓글