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), 내장 및 외부 모듈, 패키지 레지스트리, 각종 프레임워크와 개발 도구 등이 포함된다. 이 생태계를 활용하면 다양한 웹/서버/네트워크 애플리케이션을 쉽고 강력하게 개발할 수 있다.
'배우는거끄적이기' 카테고리의 다른 글
| [독학]Nest.js 대비 정리 (0) | 2025.09.27 |
|---|---|
| [과제] Express 실행 구조 요약 및 정리 (0) | 2025.09.25 |
| [번외] Next.js와 Node.js (0) | 2025.09.05 |
| [번외]JS로 Node.js를 만든 이유 (0) | 2025.09.05 |
| [React/Next.js] 관심사 분리의 중요성과 react-hook-form과 yup (0) | 2025.08.09 |