패키지 매니저(Package Manager, 패키지 관리자)
패키지 관리자(package manager, 패키지 매니저), 패키지 관리 시스템(package management system)은 컴퓨터의 운영 체제를 위해 일정한 방식으로 컴퓨터 프로그램의 설치, 업그레이드, 구성, 제거 과정을 자동화하는 소프트웨어 도구들의 모임이다. 패키지 관리자는 아카이브 파일로 된 소프트웨어 배포판과 데이터인 패키지(package)를 다룬다. 패키지에는 소프트웨어의 이름, 목적에 관한 설명, 버전 번호, 벤더, 체크섬, 소프트웨어의 정상 수행에 필요한 의존성 목록과 같은 메타데이터가 포함된다. 설치 시에 메타데이터는 로컬 패키지 데이터베이스에 저장된다. 패키지 관리자들은 일반적으로 소프트웨어 불일치, 존재하지 않은 필수 항목을 방지하기 위해 소프트웨어 의존성과 버전 정보의 데이터베이스를 유지보수하는 것이 보통이다. 이들은 소프트웨어 저장소, 바이너리 저장소 관리자, 앱 스토어와 밀접하게 동작한다. (출처: 위키피디아)
npm (Node Package Manager)
Node.js의 내장 패키지 매니저로, 자바스크립트의 원조 패키지 매니저 격이다. 과거에는 문제가 많아서 yarn에게 밀리는 모양이었으나, 최근에는 대부분이 개선되었다.
yarn (Yet Another Resource Negotiator)
2016년에 Facebook이 npm의 문제점들을 해결하기 위해 만든 자바스크립트 패키지 매니저다. npm보다 속도가 빠르고, workspaces 같은 추가 기능과, yarn.lock 파일을 통해 패키지 버전 잠금(어느 환경에서든 항상 동일한 버전의 의존성 패키지 설치)까지 제공한다. Node.js에서 기본적으로 설치되는 npm과 달리, 추가로 설치해야 한다는 단점이 있다.
명령어 차이
npm | 의미 | yarn |
npm init | 초기화 | yarn init |
npm install | package.json 또는 yarn.lock의 패키지 재설치 |
yarn 또는 yarn install |
npm install --save 패키지명 | 의존성으로 추가 | yarn add 패키지명 |
npm install --save-dev 패키지명 | 개발 의존성으로 추가 | yarn add --dev 패키지명 |
npm install --global 패키지명 | 전역으로 추가 | yarn global add 패키지명 |
npm update --save | 패키지 업데이트 | yarn upgrade |
npm run 스크립트명 | package.json의 스크립트 명령 실행 | yarn 스크립트명 |
npm uninstall --save 패키지명 | 패키지 삭제 | yarn remove 패키지명 |
npm cache clean | 캐시 삭제 | yarn cache clean |
'웹_프론트엔드 > 로드맵 챌린지' 카테고리의 다른 글
CSS 후처리기 - PostCSS (0) | 2022.01.24 |
---|---|
CSS 구조 - BEM 방법론 (0) | 2022.01.20 |
웹 보안 지식 - OWASP 보안 취약점 Top 10 (2021년 버전) (0) | 2022.01.14 |
웹 보안 지식 - CORS (Cross Origin Resource Sharing) (1) | 2022.01.13 |
웹 보안 지식 - 콘텐츠 보안 정책(CSP; Content Security Policy) (0) | 2022.01.12 |