NestJS Zero to Hero - Modern TypeScript Back-end Development

Creating a Task Service

nest g service {name} --no-spec 
  • 서비스 생성하기

생성자를 활용해서 DI 진행하기

import { Controller } from '@nestjs/common';
import { TasksService } from './tasks.service';

@Controller('tasks')
export class TasksController {
  constructor(private taskService: TasksService) {}


  helloWorld() {
    this.taskService.doSomething();
  }
}
  • 이렇게 private 라는 접근 지시어를 넣어줌으로써, 기존의 OOP 들이 특정 기능을 의존성 주입하는 방식들로 하지 않고, 생성자에서 인자로 넣어주는 것 만으로도 프로퍼티로 사용할 수 있도록 해줄 수 있다.
  • 이러한 특징이 타입스크립트가 더 짧고, 가독성이 좋게 만들어주는 요소라고 할 수 있겠다.