배우는거끄적이기

[과제] Node.js 기본 생태계(패키지 매니저, NPM 등) 정리 및 업로드

PARKpatchnotes 2025. 9. 15. 15:18

Node.js 기본 생태계(코어 및 주요 도구)

Node.js의 기본 생태계란 Node.js 개발 환경에서 주로 사용되는 코어 구성요소, 도구, 패키지, 그리고 관련 서비스들을 의미한다.

 

아래는 Node.js의 대표적인 기본 생태계 구성 요소들이다.


1. Node.js 런타임

  • 자바스크립트 코드를 서버 또는 다양한 환경에서 실행할 수 있게 해주는 런타임이다.
  • V8 엔진 기반으로 작동하며, 비동기 I/O, 이벤트 루프 등 특징을 가진다.

2. npm (Node Package Manager)

  • Node.js의 공식 패키지 매니저이다.
  • 오픈 소스 패키지를 설치, 관리, 배포할 수 있다.
  • package.json 파일로 프로젝트의 의존성을 관리한다.
  • 명령어: npm install, npm init, npm run

3. 패키지(모듈) 시스템

  • Node.js에서는 기능 단위로 모듈을 만들고, 필요에 따라 가져와 사용할 수 있다. (CommonJS, ES Module)
  • 대표적인 내장 모듈: fs, http, path, os, events
  • 외부 모듈: express, lodash, mongoose, react 등(주로 npm을 통해 설치)

4. Node.js 내장 모듈(core modules)

  • 파일 시스템(fs)
  • 네트워크(http, https, net)
  • 경로 처리(path)
  • 운영체제 정보(os)
  • 이벤트 처리(events)
  • 스트림(stream)
  • 기타 다양한 기본 기능을 제공한다.

5. 패키지 레지스트리 (npm registry)

  • npm 패키지가 저장되고 배포되는 중앙 저장소
  • https://www.npmjs.com/ 에서 패키지 검색 및 정보 확인 가능

6. 패키지 관리 도구(보조)

  • yarn: npm과 유사한 패키지 매니저, 속도와 안정성에 강점
  • pnpm: 디스크 공간을 절약하는 새로운 방식의 패키지 매니저

7. 빌드 및 실행 도구

  • nodemon: 코드 변경 시 자동으로 서버를 재시작해주는 개발용 도구
  • npx: npm 패키지를 글로벌 설치 없이 바로 실행할 수 있도록 해주는 도구

8. 테스트 및 개발 도구

  • mocha, jest: 테스트 프레임워크
  • eslint, prettier: 코드 스타일 검사 및 자동 포매팅

9. 프레임워크

  • express: 대표적인 웹 서버 프레임워크
  • koa, fastify, nestjs 등도 자주 사용된다.

10. 환경변수 관리

  • dotenv: .env 파일에서 환경변수를 쉽게 관리할 수 있는 패키지

11. 기타

  • PM2: Node.js 서버 프로세스 관리 도구
  • Typescript: Node.js에서 타입을 사용할 수 있게 해주는 언어 및 툴체인(자바스크립트와 호환)

요약

Node.js 기본 생태계에는 런타임, 패키지 매니저(npm), 내장 및 외부 모듈, 패키지 레지스트리, 각종 프레임워크와 개발 도구 등이 포함된다. 이 생태계를 활용하면 다양한 웹/서버/네트워크 애플리케이션을 쉽고 강력하게 개발할 수 있다.