자바스크립트를 허용해주세요.
[ 자바스크립트 활성화 방법 ]
from Mohon Aktifkan Javascript!
 

[Express] 1장 Express란 무엇인가

728x90

✅ 1. Express 란?

Express는 Node.js 환경에 동작하는 가장 인기있는 프레임워크 중 하나로, 웹 어플리케이션 및 API 서버를 더욱 쉽고 빠르게 만들 수 있는 라이브러리로 Node.js가 엔진이라면, Express는 Node.js 엔진 위에 있는 웹 서버 자체를 쉽고 빠르게 올려주는 웹 프레임워크라고 할 수 있습니다.


✅ 2. Express 특징

  • 간결함: 최소한의 코드로 웹 서버 구축
  • 강력한 라우팅(Routing): URL 요청이 오면 어디로 보낼 것 인지, 어떤 함수가 처리할 지를 정확하게 정해주며, HTTP 메서드 (GET, POST 등)별 처리까지 언급해줌
  • 미들웨어 (Middleware) 시스템: 요청이 들어오고 응답이 나가기 전까지, 중간에 끼어들어 모든 것을 통제함
  • 템플릿 엔진 지원: HTML 페이지까지 렌더링할 수 있음
  • RESTful API 구축 최적화: API 서버를 만드는 데 적절한 기능이 존재해 깔끔하고 효율적인 API 구축

✅ 3. 장단점

  • 장점
    • 배우기 쉽고 문서가 풍부: 가파른 학습 곡선이 없이 배우기 쉬움
    • 유연성: 미들웨어를 사용해 기능을 확장할 수 있어 커스터마이징이 무궁무진하다는 점을 어필
    • 거대한 커뮤니티와 생태계: Stack Overflow, npm등 다양한 커뮤니티에서 활발함
    • 서버 구축: Restful API를 통한 개발 시 서버 구축에 최적화
  • 단점
    • 까다로운 구조: 대규모 프로젝트 개발 시 구조 설계가 필요함
    • 많은 패키지 설치: 내장 기능이 적어 추가적인 패키지를 설치해야함
    • 에러 핸들링: 미들웨어 체인에서 에러 처리가 복잡함
    • 타입 지원 부족: 타입 지원이 약해 대형 프로젝트에서는 TypeScript를 함께 사용 권장

✅ 4. 사용 예시

  • 블로그, 게시판 등 간단 웹 사이트
  • RESTful API 서버 (모바일/웹 백엔드)
  • 실시간 채팅 서버 (Socket.io)
  • 쇼핑몰, 포트폴리오 사이트 등 

✅ 5. 설치법

1️⃣ Node.js 설치

2️⃣ 프로젝트 폴더 생성 및 초기화

아래 코드를 통한 프로젝트 폴더에 들어가 cmd 창을 열고 다음 명령어를 입력합니다.

mkdir my-express-app
cd my-express-app
npm init -y

 

3️⃣ Express 설치

npm install express & yarn add express

 

4️⃣ app.js 파일 생성후 기본 서버 코드 생성 

 

프로젝트 폴더내에 app.js를 생성하고 다음 코드로 기본적인 express 서버를 생성합니다.

const express = require("express"); // 익스프레스 모듈 가져옴
const app = express(); // 익스프레스 객체 생성
const port = 3000; // 포트 번호 설정

// 서버 포트 설정
app.get("/", (req, res) => {
  // 루트 경로에 대한 GET 요청 처리
  res.send("Hello, Express!"); // 문자열 전송
});

// 서버를 3000번 포트에 적용
app.listen(port, () => {
  console.log(`Server is running on ${port}`);
});

 

다음 명령어로 서버를 실행합니다.

node app.js

 

http://localhost:3000에 접속해 "Hello, Express!" 메시지가 뜨는지 확인해봅니다.


 

GitHub - Koras02/express-bloging: https://thinky.tistory.com/category/Back-End/Express

https://thinky.tistory.com/category/Back-End/Express - Koras02/express-bloging

github.com

 

728x90
LIST

'Back-End > Express' 카테고리의 다른 글

[Express] 4장 정적 파일 제공  (3) 2025.08.16
[Express] 3장 - 미들웨어 적용  (1) 2025.08.13
[Express] 2장 - 라우팅 구현  (4) 2025.08.11