[typescript] 타입스크립트로 Nest.js 모듈 작성하기

Nest.js는 TypeScript로 작성된 프레임워크로, Node.js 애플리케이션을 빌드하기 위한 효율적인 방법을 제공합니다. 이번에는 Nest.js에서 모듈을 작성하는 방법에 대해 알아보겠습니다.

모듈이란 무엇인가?

Nest.js에서 모듈은 애플리케이션의 기능적인 단위를 나타내며, 애플리케이션을 여러 기능 모듈로 나누어 관리할 수 있도록 도와줍니다. 모듈은 일반적으로 컨트롤러, 서비스, 프로바이더 등의 구조를 가지고 있습니다.

Nest.js 모듈 작성하기

먼저 새로운 Nest.js 프로젝트를 생성하거나 기존의 프로젝트를 사용하여 모듈을 작성할 수 있습니다. 다음은 간단한 예제 모듈의 코드입니다:

// app.module.ts

import { Module } from '@nestjs/common';
import { CatsController } from './cats.controller';
import { CatsService } from './cats.service';

@Module({
  controllers: [CatsController],
  providers: [CatsService],
})
export class AppModule {}

위 코드에서는 @Module 데코레이터를 사용하여 AppModule을 정의하고, controllersproviders 속성을 사용하여 해당 모듈의 컨트롤러 및 서비스를 등록합니다.

모듈 등록

작성한 모듈을 사용하려면 애플리케이션의 루트 모듈에 해당 모듈을 등록해야 합니다. 다음은 AppModule을 루트 모듈로 사용하는 예제입니다:

// main.ts

import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';

async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  await app.listen(3000);
}
bootstrap();

위 코드에서는 NestFactory.create 메서드를 사용하여 AppModule을 생성하고, 애플리케이션을 시작합니다.

결론

Nest.js를 사용하여 모듈을 작성하고 등록하는 방법에 대해 간략하게 알아보았습니다. 모듈을 효율적으로 활용하여 Nest.js 애플리케이션을 더 모듈화된 형태로 구축할 수 있습니다.

더 자세한 내용은 Nest.js 공식 문서를 참고하시기 바랍니다.