Nest.js는 현대적인 웹 애플리케이션을 구축하기 위한 강력한 프레임워크로, TypeScript를 기반으로 하여 개발자에게 효율적이고 구조화된 코드를 작성할 수 있는 환경을 제공합니다. 이번 포스트에서는 Nest.js를 활용하여 첫 번째 애플리케이션을 만드는 과정을 단계별로 안내하겠습니다. 이 과정은 프로젝트 생성, 기본 컨트롤러 및 서비스 생성, 그리고 애플리케이션 실행에 대한 내용을 포함합니다.
1. 프로젝트 생성
Nest.js 애플리케이션을 시작하기 위해서는 먼저 Nest CLI(Command Line Interface)를 설치해야 합니다. Nest CLI는 애플리케이션을 신속하게 설정하고 관리할 수 있도록 도와주는 도구입니다.
1.1 Nest CLI 설치
Node.js가 설치된 환경에서 다음 명령어를 통해 Nest CLI를 전역으로 설치합니다. 이 과정은 CLI 도구를 통해 다양한 Nest.js 명령어를 사용할 수 있게 해줍니다.
npm install -g @nestjs/cli
1.2 새로운 프로젝트 생성
원하는 디렉토리에서 아래 명령어를 입력하여 새로운 Nest.js 프로젝트를 생성합니다. 이 명령어는 기본적인 파일 구조와 설정을 포함한 새로운 프로젝트를 만들어 줍니다.
nest new my-first-app
1.3 디렉토리 이동
생성된 프로젝트 폴더로 이동합니다. 이 단계는 프로젝트의 파일을 관리하고 수정하기 위해 필수적입니다.
cd my-first-app
이렇게 하면 기본적인 파일 구조가 포함된 새 Nest.js 프로젝트가 준비되며, 이제 여러분은 이 프로젝트를 기반으로 다양한 기능을 추가할 수 있는 준비가 완료되었습니다.
2. 기본 컨트롤러 및 서비스 생성
Nest.js는 MVC(모델-뷰-컨트롤러) 아키텍처 패턴을 따르므로, 컨트롤러와 서비스를 정의하여 비즈니스 로직과 요청 처리를 명확히 분리할 수 있습니다. 이는 코드의 가독성을 높이고 유지보수를 용이하게 합니다.
2.1 컨트롤러 생성
아래 명령어로 app.controller.ts
라는 새로운 컨트롤러 파일을 만듭니다. 이 컨트롤러는 클라이언트의 요청을 처리하는 역할을 합니다.
nest generate controller app
2.2 서비스 생성
다음으로, 비즈니스 로직을 처리할 서비스를 추가합니다. 서비스는 데이터 처리 및 비즈니스 로직을 담당합니다.
nest generate service app
2.3 컨트롤러 수정
생성된 컨트롤러 파일을 열어 아래와 같이 수정합니다. 이 코드는 HTTP GET 요청에 대한 응답으로 "Hello World!" 메시지를 반환하는 기능을 가지고 있습니다.
import { Controller, Get } from '@nestjs/common';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
@Get()
getHello(): string {
return this.appService.getHello();
}
}
2.4 서비스 수정
서비스 파일을 열어 아래와 같이 수정합니다. 이 서비스는 문자열 "Hello World!"를 반환하는 메서드를 제공합니다.
import { Injectable } from '@nestjs/common';
@Injectable()
export class AppService {
getHello(): string {
return 'Hello World!';
}
}
이제 컨트롤러와 서비스가 준비되었으며, 이들은 서로 협력하여 클라이언트의 요청을 처리하고 응답을 생성하는 역할을 하게 됩니다.
3. 애플리케이션 실행
애플리케이션이 성공적으로 구성되었다면 이제 실행해 볼 차례입니다. 이 단계는 여러분이 만든 애플리케이션이 실제로 작동하는 모습을 확인할 수 있는 기회를 제공합니다.
3.1 애플리케이션 시작하기
아래 명령어로 서버를 시작합니다. 이 명령어를 실행하면 Nest.js 애플리케이션이 로컬 서버에서 실행됩니다.
npm run start
3.2 브라우저 열기
웹 브라우저를 열고 http://localhost:3000 주소로 접속하면 "Hello World!" 메시지를 확인할 수 있습니다. 이는 여러분이 만든 애플리케이션이 정상적으로 작동하고 있음을 나타냅니다.
요약
첫 번째 Nest.js 애플리케이션은 간단한 구조를 가지고 있지만, 프레임워크의 핵심 요소인 컨트롤러와 서비스의 작동 방식을 이해하는 데 큰 도움이 됩니다. 이러한 기초적인 작업은 더 복잡한 기능들을 구현하기 위한 기반이 되며, 앞으로 진행될 학습에서도 중요한 역할을 하게 될 것입니다.
이제 여러분은 자신만의 첫 번째 Nest.js 애플리케이션을 만들고 실행해 보는 경험을 통해, 실제 개발 환경에서의 작업 흐름을 익히고, 더 나아가 다양한 기능을 추가해 나갈 수 있는 기초를 다지게 되었습니다!
'프로그래밍 > Nest.js' 카테고리의 다른 글
Nest.js 애플리케이션 배포 및 운영: 프로덕션 준비의 모든 것 (0) | 2025.03.18 |
---|---|
유효성 검사 및 오류 처리: Nest.js에서의 유효성 검사 파이프 활용하기 (0) | 2025.03.18 |
Nest.js의 아키텍처: 모듈의 중요성과 활용 (0) | 2025.03.18 |
Nest.js 애플리케이션을 클라우드 환경에 배포하는 방법 (0) | 2025.03.18 |
Nest.js의 아키텍처: 가드의 중요성과 활용 (0) | 2025.03.18 |