패키지 매니저(Package Manager) 이해

이정기·2022년 12월 14일
0

TIL

목록 보기
41/71
post-thumbnail

패키지 매니저란?

패키지를 손쉽게 다루는 작업을 안전하고 편리하게 사용하기 위한 툴
다른 사람들이 만들어준 코드를 다운로드 받거나, 자신의 코드를 배포하여 다른 사람이 쓸 수 있도록 할 수 있다.
Node.js에서 대표적으로 사용하는 패키지 매니저는 npm과 yarn이 존재

패키지란?

npm이나 yarn에 업로드된 Node.js 모듈을 패키지라고 부른다.
모듈이 다른 모듈을 참조하여 사용하는 것과 같이, 패키지도 다른 패키지를 사용할 수 있다. (의존관계라 표현)

npm(Node Package Manager) 이란?

자바스크립트에서 사용할 수 있는 패키지(모듈) 관리자
파이썬에선 pip , 노드에서는 npm 로 패키지 설치
쉽게 버전관리 및 제거 가능

yarn

npm의 대체제로 FaceBook이 출시한 패키지 매니저
npm에서 부족한 부분을 보완하여 편리한 기능이 추가되었고, 더욱 빠른 속도로 패키지를 관리할 수 있는 패키지 매니저

충돌할 수 있으니 둘중 하나만 사용하자.

Package.json 이란?

설치한 패키지들의 버전을 관리할 때 사용하는 파일
프로젝트명, 작성자, 라이센스 정보등 다양한 메타 데이터들을 기록 가능

Pacakge-lock.json 이란?

npm으로 패키지를 설치, 수정, 삭제할 때마다 패키지들의 의존 관계를 package-lock.json파일에 저장
package.json = 정의한 패키지가 들어있다.
node_modules = 패키지 버전과, 의존관계가 기록되어 있다.
프로젝트에서 의존하는 패키지 버전을 정확하게 관리할 때 사용

npm 시작하기

npm init

명령어를 통해 package.json 파일을 만들 때 사용
새로운 프로젝트나 패키지를 만들 때 사용
패키지명, 프로젝트 버전, Github URL등 프로젝트와 관련된 다양한 정보를 설정

패키지 설치

npm i express mongoose jest

i 는 install 준말, i 뒤에 패키지를 나열해 한번에 설치 가능.

node_modules 폴더

package.json 파일 내용 기반으로 npm install 명령어를 통해 설치된 모듈 파일들이 모여있는 곳
package.json에 설정된 모듈과 해당 모듈들이 참고하고 있는 또 다른 모듈도 함께 설치
배포할 때 포함하면 안됌.

패키지 공유

npm install

내 프로젝트를 다른 사람에게 공유하거나 다른 사람의 프로젝트를 사용할 때 모듈을 설치하기 위해 실행하는 명령어

devDependencies

npm install -D (모듈이름)

개발 단계에서만 필요한 모듈들을 설치할 경우 이곳에 포함

profile
Node.js 로 꿈을 꾸었다..

0개의 댓글