본문 바로가기

분류 전체보기110

[NestJS] Middleware 😶 Middleware 라우터 핸들러 이전에 호출되는 함수. 미들웨어 기능은 요청/응답 개체에 엑세스할 수 있으며 next() 애플리케이션의 요청/응답 주기에 있는 미들웨어 기능도 있음 미들웨어 기능은 nest 로 표기됨 [Client Side] --- Http Request ---> [Middleware] ------> [Route Handler] @RequestMapping import { Injectable, NestMiddleware } from "@nestjs/common"; import { Request, Response, NextFunction } from 'express'; @Injectable() export class LoggerMiddleware implements NestMiddle.. 2023. 9. 5.
[NestJS] Modules 😶 @Modules providers : Nest 인젝터에 의해 인스턴스화되고 적어도 이 모듈 전체에서 공유될 수 있는 공급자 controllers: 인스턴스화되어야 하는 이 모듈에 정의된 컨트롤러 imports : 이 모듈에 필요한 공급자를 내보내는 가져온 모듈 목록 exports: 하위 집합은 providers 이 모듈에서 제공되며 이 모듈을 가져오는 다른 모듈에서 사용할 수 있어야 한다. import { Module, Global } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; import { CatsModule } from './cat.. 2023. 9. 5.
[NestJS] Provider, IOC, DI 😑 Provider - NestJS의 기본 개념. - 의존성을 주입 시킨다 - service, repository, factory, helper 객체가 서로 다양한 관계를 만들 수 있다는 것을 의미. 객체의 인스턴스를 연결해주는 기능은 Nest 런타임 시스템에 위임될 수 있음 (?) 😑 Nest 런타임 시스템 : NestJS 내부에서 작동하는 시스템으로, Provider 클래스의 인스턴스를 생성하고 관리하는 역할을 한다. 개발자는 명시적으로 Provider를 정의하고 설정하지만,이러한 Provider 인스턴스의 생성과 관계는 NestJS 런타임 시스템에 의해 자동으로 처리된다. 이것은 개발자가 객체 생성과 의존성 관리에 대해 신경 쓰지 않고도 NestJS 애플리케이션을 효율적으로 작성할 수 있게 해준다... 2023. 9. 5.
[NestJS] SOLID 😶 SRP Single Responsibility Principle: 단일 책임의 원칙 . 단일 책임 원칙은 클래스(객체)는 단하나의 책임만 가져야한다. (즉, 하나의 클래스는 하나의 기능을 담당하여 하나의 책임을 수행해야 한다) . "기능 변경(수정)"이 일어났을때의 파급 효과 : 여러개의 클래스들이 강한 결합되었을때, 그 중 한개의 클래스를 수정했을때의 개발 비용 증가 됨. . SRP 원칙의 사용으로 클래스가 많아졌다고 하여도, 유지보수 측면에서 용이함. . 한 책임의 변경으로부터 다른 책임의 변경으로의 연쇄작용에서 자유로워짐. (코드의 가독성 향상, 유지보수 용이 -> 설계 원리들을 적용하는 기초가 됨) 😶 OCP Open Closed Priciple: 개방 폐쇄 원칙 . 확장에 열려있어야 하며, .. 2023. 9. 4.