nestjs5 NestJS | 의존성 주입, 제어의 역전 Depencency Injection - 의존성 주입의존성 주입이란 A, B 라는 클래스가 존재할 때 A가 B의 기능을 사용하고 있다면 A는 B에 의존한다 라고 할 수 있다.의존하고 있는 값을 주입해준다는 뜻으로 의존성 주입이라고 함Inversion of Control - 제어의 역전일반적으로 Instance의 생성과 삭제는 개발자가 관리하는 영역이다.하지만 이를 프레임워크가 관리하도록 제어권이 역전되는 것을 제어의 역전이라고 한다.NestJS 는 실행과 동시에 IoC 컨테이너가 생성된다예를 들어 A,C 라는 컨트롤러가 있고, B 라는 서비스를 의존하고 있다면IoC 컨테이너가 B 의 인스턴스를 생성하고 인스턴스 B의 라이프사이클을 제어한다. 각 컨트롤러에서 서비스 B가 필요할 때마다 IoC 컨테이너가.. 2024. 11. 6. NestJS | Config (env) NestJS 에서는 환경변수를 위한 모듈을 제공한다yarn add @nestjs/config config 설치 후앱 모듈 파일에 ConfigModule을 import 해준다 코드 적용// 사용하고자 하는 서비스의 constructor 에 추가 private readonly configService: ConfigService,//=================================================verifyToken(token: string) { try { return this.jwtService.verify(token, { // 이런식으로도 사용 가능하지만 secret: this.configService.get('JWT_SECRET'), .. 2024. 8. 25. NestJS | Service Express 에서 개발을 했을 때 로직 구현을 Controller 에서 모두 구현을 했었다.NestJS 에서는 Java Spring 처럼 Service에서 로직 구현 후 컨트롤러에서 불러오는 코드를 작성한다고 한다. Controller 에 작성된 코드를 Service로 옮겨보자 posts.controller.ts / Service 로 수정 전import { Body, Controller, Delete, Get, NotFoundException, Param, Post, Put } from '@nestjs/common';import { PostsService } from './posts.service';interface PostModel { id: number; author: string; title.. 2024. 8. 14. NestJS | Controller | 모듈 생성하기, Postman 요청 보내기 모듈 생성하기처음 NestJS 프로젝트를 생성하면 AppController 가 존재하는데 개발 할 때 모듈 단위로 개발 하기 때문에 AppController를 사용하는 경우는 드물다 그렇기 때문에 모듈 별로 기능 개발을 해야한다. 이때 개발자가 손수 코드를 작성해서 파일을 작성하느냐 ? 아니다 NestJS 는 nest cli 라는 기능을 제공하기 때문에 개발자가 일일이 만들 필요가 없다 터미널에 아래 명령어를 입력nest g resource Nest 리소스를 생성 ( generate ) 하겠다는 명령어. posts.controller.tsimport { Controller, Get } from '@nestjs/common';import { PostsService } from './posts.servic.. 2024. 8. 13. NestJS 시작하기 2차 프로젝트가 끝나고 열심히 이력서를 넣고 있지만 쉽지가 않다 ㅠㅠ. 3차 프로젝트를 진행하지 않고 취업준비를 위한 시간을 가지기로 해서 TypeScript와 NestJS 를 배워보려고 한다!NestJS 란https://docs.nestjs.com/ Documentation | NestJS - A progressive Node.js frameworkNest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is built with TypeScript and combines elements of OOP (Object Oriented Programming.. 2023. 12. 15. 이전 1 다음