1. Provider 클래스, 팩토리, 값 등을 등록하여 Nest.js 애플리케이션 내에서 의존성 주입을 통해 사용할 수 있게 해준다. 1. service - 비즈니스 로직을 처리하기 위한 서비스 클래스를 정의할 때 사용. DI를 통해 Cotroller나 다른 서비스에서 사용 된다. import { Injectable } from '@nestjs/common'; import { Cat } from './interfaces/cat.interface'; @Injectable() export class CatsService { private readonly cats: Cat[] = []; create(cat: Cat) { this.cats.push(cat); } findAll(): Cat[] { return ..
1. Controller Routing(라우팅) import { Controller, Get } from '@nestjs/common'; @Controller('cats') export class CatsController { @Get() findAll(): string { return 'This action returns all cats'; } } 데코레이터 부분에 'cats'가 path 역할을 하여 /cats 이렇게 들어가게 된다. @Controller() 이렇게 아무것도 없을 경우 root path가 된다. Request Method import { Controller, Get, Req } from '@nestjs/common'; import { Request } from 'express'; @Co..
1. nest.js 모듈이란? ==> Nest.js에서 모듈은 애플리케이션을 구성하는 핵심 요소 중 하나. 모듈은 관련된 기능을 그룹화하고 재사용 가능한 코드를 캡슐화하는 데 사용. Nest.js는 모듈을 사용하여 애플리케이션을 컴파일하고 실행하며, 의존성 주입(Dependency Injection)을 통해 모듈 간의 상호작용을 관리한다. 기능의 분리: 애플리케이션을 작은 기능 단위로 분리하여 관리. 의존성 관리: 모듈은 자체적으로 필요한 의존성을 가질 수 있다. 다른 모듈에서 해당 모듈을 가져와 사용할 때, 의존성 주입을 통해 필요한 의존성을 제공받을 수 있다. 재사용성: 모듈은 다른 애플리케이션에서도 재사용될 수 있다. 이는 코드를 모듈로 캡슐화함으로써 발생. 따라서 비슷한 기능을 가진 다른 프로젝트..
class Car { color: string; constructor(color: string) { this.color = color; } start() {} } const bmw = new Car('red'); 여기서 class 내 속성 중에 변수를 먼저 선언하기 싫다면 constructor 내에 매개변수 앞에 readonly나 public을 이용하면 된다. 접근 제한자(Access modifier) - public, private, protected 이용하면 된다. // 접근 제한자(Access modifier) - public, private, protected class Car { name: string = 'car'; color: string; constructor(color: string) {..