본 강좌에서는 Node.js와 Express.js를 설치하고 설정하는 방법에 대해 자세히 설명합니다. Node.js는 서버 사이드 자바스크립트 실행 환경으로, Express.js는 Node.js 위에서 동작하는 웹 애플리케이션 프레임워크로써, 웹 서버를 쉽게 만들 수 있도록 도와줍니다.
1. Node.js란?
Node.js는 구글 크롬의 V8 자바스크립트 엔진을 기반으로 하는 서버 사이드 플랫폼입니다. 비동기 이벤트 기반 아키텍처를 사용하여, 높은 성능의 네트워크 애플리케이션을 만들 수 있게 해줍니다. Node.js는 자바스크립트를 사용하여 서버 사이드에서 코드 작성이 가능하게 하여, 프론트엔드와 백엔드에 동일한 언어로 개발할 수 있는 장점을 제공합니다.
Node.js의 주요 특징
- 비동기 I/O: Node.js는 비동기적으로 작업을 진행하여, 많은 수의 클라이언트 요청을 동시에 처리할 수 있습니다.
- 단일 스레드 이벤트 루프: Node.js는 단일 스레드를 사용하여 이벤트 루프를 통해 요청을 처리합니다. 이로 인해 자원을 효율적으로 사용할 수 있습니다.
- 풍부한 패키지 생태계: npm(Node Package Manager)을 통해 수많은 패키지를 쉽게 설치하고 관리할 수 있습니다.
2. Express.js란?
Express.js는 Node.js 위에서 구축된 웹 애플리케이션 프레임워크입니다. 매우 간결하고 유연한 구조를 가지고 있어 RESTful API 및 웹 애플리케이션을 쉽게 제작할 수 있도록 돕습니다. Express.js는 미들웨어를 중심으로 설계되어, 다양한 기능을 추가할 수 있는 확장성이 있습니다.
Express.js의 주요 특징
- 간편한 라우팅: URL 경로에 따라 다른 핸들러를 지정할 수 있습니다.
- 미들웨어 지원: 요청과 응답 사이에 로직을 추가할 수 있는 미들웨어를 쉽게 사용할 수 있습니다.
- 설정 파일이 필요 없음: 프로젝트 설정을 위한 별도의 설정 파일이 필요 없어 즉시 개발을 시작할 수 있습니다.
3. Node.js 설치 방법
Node.js를 설치하기 위해서는 공식 홈페이지에서 설치 파일을 다운로드해야 합니다. 아래 단계에 따라 설치를 진행하세요.
3.1. Node.js 다운로드
1. [Node.js 공식 웹사이트](https://nodejs.org/)에 접속합니다.
2. LTS(Long Term Support) 버전과 Current 버전이 제공됩니다. 안정성을 우선시한다면 LTS 버전을 선택합니다.
3. 운영체제에 맞는 설치 파일을 다운로드합니다.
3.2. 설치하기
1. 다운로드한 설치 파일을 실행합니다.
2. 설치 마법사의 안내에 따라 진행합니다.
3. 설치가 완료되면 명령 프롬프트 또는 터미널을 열어 아래 명령어를 입력하여 설치가 성공적으로 이루어졌는지 확인합니다.
node -v
위 명령어를 입력하면 Node.js의 버전이 출력되어야 합니다. 만약 버전이 출력되면 성공적으로 설치된 것입니다.
4. npm(Node Package Manager) 설치하기
Node.js를 설치하면 기본적으로 npm도 함께 설치됩니다. npm은 Node.js 패키지 관리자로, 패키지를 설치하고 관리하는 데 사용됩니다. 아래 명령어로 npm이 정상적으로 설치되었는지 확인할 수 있습니다.
npm -v
npm의 버전이 출력되면 정상적으로 설치된 것입니다. npm을 통해 Express를 설치하기 전에, 먼저 패키지의 최신 목록을 업데이트할 수 있습니다.
5. Express.js 설치 방법
이제 Node.js와 npm이 설치되었으니, Express.js를 설치할 준비가 되었습니다. 아래의 단계에 따라 Express.js를 설치할 수 있습니다.
5.1. 새로운 프로젝트 폴더 생성
작업할 폴더를 생성한 후 해당 폴더로 이동합니다. 아래 명령어를 사용해 새 폴더를 생성하고 그 안으로 이동합니다.
mkdir my-express-app && cd my-express-app
5.2. npm 초기화
아래의 명령어를 입력하여 npm 프로젝트를 초기화합니다.
이 과정에서 일부 정보를 입력 받게 되는데, 기본값으로 진행하고 싶다면 엔터 키를 누르면 됩니다.
npm init -y
5.3. Express.js 설치
Express를 설치하기 위해 아래 명령어를 입력합니다.
npm install express
설치가 완료되면 node_modules
폴더와 package.json
파일이 생성됩니다. package.json
파일은 프로젝트에 필요한 패키지와 버전 정보를 담고 있습니다.
6. 기본 Express 서버 생성하기
Express를 설치한 후, 간단한 서버를 만들어 볼 차례입니다. 아래의 코드를 사용하여 기본적인 Express 서버를 생성할 수 있습니다.
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
app.get('/', (req, res) => {
res.send('Hello, Express!');
});
app.listen(PORT, () => {
console.log(`서버가 http://localhost:${PORT}에서 작동중입니다.`);
});
코드 설명
const express = require('express');
: Express 모듈을 불러옵니다.const app = express();
: Express 애플리케이션 객체를 생성합니다.app.get('/', ...)
: 루트 경로(‘/’)로 들어오는 GET 요청에 대해 응답을 지정합니다.app.listen(PORT, ...)
: 지정한 포트에서 서버를 실행합니다.
7. 서버 실행하기
작성한 코드를 server.js
와 같은 파일로 저장한 후, 터미널에서 아래 명령어로 서버를 실행합니다.
node server.js
이제 웹 브라우저를 열고 http://localhost:3000
에 접속하면 “Hello, Express!”라는 메시지를 볼 수 있습니다.
8. 추가적으로 알아두면 좋은 점
Express.js를 사용하면 RESTful API를 쉽게 구축할 수 있고, 다양한 미들웨어를 통해 기능을 확장할 수 있습니다. JSON 데이터 전송, 세션 관리, 인증 등 다양한 기능을 제공하므로, 다양한 웹 애플리케이션 구축에 유용하게 사용할 수 있습니다.
9. 마무리
이번 강좌에서는 Node.js와 Express.js의 설치 방법과 기본적인 서버 설정을 배웠습니다. 이 과정을 통해 더 다양한 기능을 탐구하고, 실제 애플리케이션을 개발하는 데 더 깊이 있게 들어갈 수 있습니다. 다음 강좌에서는 CRUD(생성, 읽기, 업데이트, 삭제) 기능을 가진 웹 애플리케이션을 만들어보겠습니다.