구조화된 아키텍쳐: NestJS는 코드를 거시적인 관점에서 Provider, Controller, Module로 분리하며 이런 작은 컴포넌트들끼리의 조합(DI)을 통해 전체 애플리케이션을 완성한다. 1. Provider = 비즈니스 로직 @Injectable() export class Service {} nest의 가장 간단하고 작은 단위의 컴포넌트를 표현 기본적으로 @Injectable() 데코레이터로 나타내며 다른 프로바이더나 컨트롤러에 주입(Inject)될 수 있다. (provider = 제공자) Provider의 종류로는 가장 간단한 Service부터 시작해서 Middleware, Pipe, Guard, Interceptor 등이 존재 2. Controller = 실제 외부와의 통신과 라우팅 등을..