본문 바로가기

Frontend

Node.js 기초

 Node.js란? 

Node.js
웹 브라우저가 아닌 환경에서도 JavaScript를 실행할 수 있게 해주는 런타임(Runtime) 이다.

기존의 JavaScript는 브라우저 내부에서만 실행되었지만, Node.js의 등장으로 다음과 같은 작업이 가능해졌다.

  • 서버 개발
  • 파일 시스템 접근
  • CLI 프로그램 제작
  • 백엔드 개발

Node.js = JavaScript 실행기 (Runtime)


 React와 Node.js의 관계  

React는 브라우저에서 실행되는 라이브러리이지만, 개발 환경 자체는 Node.js 기반으로 구성된다.

  • 개발 서버 실행
  • 번들링 및 빌드
  • 패키지 관리(npm)

따라서 React 개발을 위해서는 Node.js 설치가 필수이다.


 JavaScript의 탄생 배경  

JavaScript는 처음에 웹 페이지 내부에서 간단한 동작을 처리하기 위해 만들어졌다.

예를 들면,

  • 버튼 클릭 처리
  • 폼 유효성 검사
  • 간단한 UI 제어

이후 Node.js가 등장하면서 JavaScript는 프론트엔드를 넘어 범용 프로그래밍 언어로 확장되었다.


 패키지(Package)란?  

패키지는 Node.js에서 사용하는 프로그램 단위이다.

  • 여러 기능을 하나로 묶은 코드
  • npm을 통해 설치 및 관리

예시로는 다음과 같은 패키지들이 있다.

  • 날짜 처리
  • 랜덤 값 생성
  • 수학 계산
  • 서버 프레임워크

 VSCode에서 터미널 열기  

VSCode에서 터미널을 여는 단축키는 다음과 같다.

Cmd + J

 

터미널은 에디터 하단에 열린다.

 


 npm init (프로젝트 초기화)  

Node.js 프로젝트를 시작할 때 가장 먼저 실행하는 명령어이다.

npm init

 

엔터를 계속 누르면 기본 설정으로 프로젝트가 초기화된다.
실행 후 package.json 파일이 생성된다.

package.json은 해당 프로젝트의 설정 파일이자 설명서 역할을 한다.


 Node.js로 JavaScript 파일 실행하기  

먼저 JavaScript 파일을 생성한다.

index.js

터미널에서 다음 명령어로 실행할 수 있다.

node 경로/파일명

예시:

node src/index.js

 


 npm script 사용하기  

매번 node 명령어와 파일 경로를 직접 입력하는 것은 번거롭다.
이럴 때 npm script를 사용한다.

package.json에 scripts 항목을 추가한다.

"scripts": {
  "start": "node src/index.js"
}

 

이후 아래 명령어로 실행할 수 있다.

npm run start

 


 

 모듈 시스템이란?  

모듈 시스템이란
코드를 여러 파일로 나누고, 필요한 부분만 불러와 사용하는 방식을 말한다.

모듈 시스템을 사용하는 이유는 다음과 같다.

  • 코드가 길어지는 것을 방지
  • 기능별 관리 가능
  • 재사용성 증가
  • 유지보수 용이

 JavaScript 모듈 시스템 종류  

JavaScript에는 대표적으로 두 가지 모듈 시스템이 있다.

CommonJS

  • Node.js 기본 모듈 방식
  • require, module.exports 사용

ES Module

  • 최신 JavaScript 표준
  • import, export 사용

 CommonJS 예제  

math.js 파일을 생성한다.

function add(a, b) {
  return a + b;
}

function sub(a, b) {
  return a - b;
}

module.exports = {
  add,
  sub,
};

 

index.js에서 해당 모듈을 불러온다.

const moduleData = require("./math");

console.log(moduleData.add(1, 2));
console.log(moduleData.sub(2, 1));

const { add, sub } = require("./math");
console.log(add(1, 2));
console.log(sub(2, 1));

 


 ES Module 사용 방법  

ES Module을 사용하려면 package.json에 아래 내용을 추가해야 한다.

"type": "module"

 

 


 ES Module 예제  

math.js 파일

export function add(a, b) {
  return a + b;
}

export function sub(a, b) {
  return a - b;
}

export default function multiply(a, b) {
  return a * b;
}

 

index.js 파일

import mul, { add, sub } from "./math.js";

console.log(add(1, 2));
console.log(sub(2, 1));
console.log(mul(2, 3));

 

ES Module에서는 파일 확장자 .js를 반드시 명시해야 한다.

 


 라이브러리란?  

라이브러리는
자주 사용하는 기능을 미리 구현해 놓은 모듈 묶음이다.

대표적인 예시는 다음과 같다.

  • 날짜 및 시간 처리
  • HTTP 요청
  • 서버 프레임워크
  • 유틸 함수 모음

 npm으로 라이브러리 설치하기  

npm 공식 사이트에서 라이브러리를 검색할 수 있다.

https://www.npmjs.com/

설치는 다음 명령어로 진행한다.

npm install randomcolor

 

 


  설치 후 생성되는 파일들  

라이브러리를 설치하면 다음과 같은 파일들이 생성된다.

  • package.json
    → 의존성 정보가 기록됨
  • node_modules
    → 실제 라이브러리 코드가 저장됨
  • package-lock.json
    → 정확한 버전 정보 기록

  node_modules는 GitHub에 올리지 않는다  

node_modules 폴더는 용량이 크며,
npm install 명령어로 언제든 다시 설치할 수 있다.

따라서 .gitignore에 반드시 추가한다.


  npm install  

아래 명령어를 실행하면
package.json 기준으로 모든 의존성이 설치된다.

npm i

 

 


  Node.js & npm 버전 확인  

설치가 정상적으로 되었는지 확인하려면 아래 명령어를 사용한다.

node -v
npm -v

 

'Frontend' 카테고리의 다른 글

css #2  (1) 2025.10.11
css #1  (0) 2025.10.11