NPM 패키지를 설치하고 사용하는 방법을 이해하며, 로컬 및 전역 설치의 차이점을 학습한다. 또한, 설치한 패키지를 활용하는 예제를 통해 실습해본다.
1. NPM 패키지 설치 방법 (npm install)
패키지 설치 명령어
· npm install 명령어는 NPM 패키지를 설치하는 기본 명령어이다.
· 특정 패키지를 설치할 때 패키지 이름을 명령어 뒤에 추가한다.
npm install package-name
로컬 설치
· 로컬 설치는 현재 프로젝트의 node_modules 폴더에 패키지를 설치한다.
· 설치된 패키지는 package.json 파일의 dependencies 항목에 추가된다.
npm install express
· express 패키지가 로컬에 설치되고, package.json 파일이 업데이트된다.
전역 설치
· 전역 설치는 컴퓨터 전체에서 사용할 수 있도록 패키지를 설치한다.
· 전역 설치된 패키지는 특정 프로젝트에 종속되지 않는다.
npm install -g nodemon
· nodemon 패키지가 전역에 설치되어, 모든 프로젝트에서 사용할 수 있게 된다.
2. 로컬 및 전역 설치
로컬 설치의 장점
· 프로젝트별로 필요한 패키지를 관리할 수 있다.
· 프로젝트 간 패키지 버전 충돌을 방지할 수 있다.
전역 설치의 장점
· 개발 도구나 CLI 도구를 설치할 때 유용하다.
· 여러 프로젝트에서 동일한 패키지를 사용할 때 편리하다.
로컬 설치 예제
npm install lodash
· lodash 패키지를 로컬에 설치하고, 프로젝트 코드에서 이를 사용할 수 있다.
전역 설치 예제
npm install -g typescript
· typescript 패키지를 전역에 설치하고, 터미널에서 tsc 명령어를 사용할 수 있다.
3. 패키지 사용 예제
로컬 설치된 패키지 사용
· 로컬 설치된 패키지를 프로젝트 코드에서 불러와 사용한다.
const _ = require('lodash');
// 배열에서 고유한 값을 추출
const numbers = [1, 2, 2, 3, 4, 4, 5];
const uniqueNumbers = _.uniq(numbers);
console.log(uniqueNumbers); // 출력: [1, 2, 3, 4, 5]
전역 설치된 패키지 사용
· 전역 설치된 패키지는 CLI 도구로 사용한다.
tsc --version
· TypeScript 컴파일러(tsc)의 버전을 확인한다.
실습: NPM 패키지 설치 및 사용
1. 로컬 설치 실습
· lodash 패키지를 로컬에 설치하고, 이를 사용하여 배열의 고유한 값을 추출하는 프로그램을 작성하세요.
npm install lodash
const _ = require('lodash');
const array = [1, 2, 3, 4, 5, 5, 6, 6, 7];
const uniqueArray = _.uniq(array);
console.log(uniqueArray); // 출력: [1, 2, 3, 4, 5, 6, 7]
2. 전역 설치 실습
· nodemon 패키지를 전역에 설치하고, 이를 사용하여 Node.js 애플리케이션을 자동 재시작해보세요.
예제
npm install -g nodemon
· app.js 파일을 생성하고 다음 내용을 작성하세요.
console.log('Hello, World!');
nodemon을 사용하여 애플리케이션을 실행하세요.
nodemon app.js
3. 패키지 정보 확인 및 업데이트
· 로컬에 설치된 패키지의 정보를 확인하고, 최신 버전으로 업데이트하세요.
npm info lodash
npm update lodash
- 이전 수업 목록
'프로그래밍 > Node.js' 카테고리의 다른 글
[Node.js 강의 시리즈] 13강 - 유용한 NPM 명령어 (0) | 2024.07.10 |
---|---|
[Node.js 강의 시리즈] 12강 - package.json 파일 (0) | 2024.07.09 |
[Node.js 강의 시리즈] 10강 - NPM과 패키지 관리 (0) | 2024.07.05 |
[Node.js 강의 시리즈] 9강 - 이벤트 모듈 (events) (0) | 2024.07.04 |
[Node.js 강의 시리즈] 7강 - HTTP 모듈 (0) | 2024.07.02 |