NestJS - 캡슐화(Encapsulation) & Modules
·
Node/NestJS
NestJS 프레임워크 사용을 위한 기본 개념에 대해 간략하게 정리해 보고자 한다. 본 포스팅에서는 NestJS에서의 Modules 와 캡슐화(Encapsulation)에 대해 알아보도록 하겠다. 캡슐화 Modules 1. 캡슐화 (Encapsulation) 캡슐화(encapsulation)는 객체(object)의 속성과 행위(method)를 하나로 묶고 구현된 일부를 감추어 은닉하는 것을 일컫는다. 다시 말해, 클래스의 내부 변수와 메소드를 하나로 패키징하는 특징이다. 캡슐화와 비슷한 개념으로 정보 은닉(information hiding)이라는 개념이 있는데, 이는 객체의 내부 구현을 숨김으로써 객체가 반드시 정해진 메소드를 통해 상호작용 하도록 유도한다. 이 두 개념은 객체의 응집도와 독..
NestJS - 의존성 주입(DI) & Providers
·
Node/NestJS
NestJS 프레임워크 사용을 위한 기본 개념에 대해 간략하게 정리해 보고자 한다. 본 포스팅에서는 Providers 와 의존성 주입(Dependency Injection)에 대해 알아보도록 하겠다. 의존성 주입 Providers 1. 의존성 주입 (Dependency Injection) // app.controller.ts 파일 import { Controller, Get } from '@nestjs/common'; import { AppService } from './app.service'; @Controller() export class AppController { constructor(private readonly appService: AppService) {} @Get() getHe..
NestJS - 기본 구조 & Controllers
·
Node/NestJS
NestJS 프레임워크 사용을 위한 기본 개념에 대해 간략하게 정리해 보고자 한다. 본 포스팅에서는 NestJS의 기본 구조와 Controller 패턴에 대해 알아보도록 하겠다. Setup src/ 디렉토리 구조 Controllers 1. Setup Nest CLI 를 사용해서 프로젝트를 생성해보고자 한다. 우선 npm을 사용해 @nestjs/cli 를 global로 설치해준다. 설치가 완료되었다면, nest new [프로젝트명] 명령어를 통해 보일러 플레이트 코드(Boilerplate code)와 함께 NestJS 프로젝트를 생성할 수 있다. ## Nest CLI 설치 $ npm i -g @nestjs/cli ## Nest 프로젝트 생성 $ nest new [project-name] 보일러..