전체 글(62)
-
NestJS 帶你飛! 시리즈 번역 16# Configuration
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. 전의 포스팅에서 Dynamic Module와 dotenv를 사용하여 간단하게 환경변수를 관리하는 모듈을 만들었습니다. 하지만 환경변수란 무엇일까요? 왜 환경변수를 만들어 관리해야 하는걸까요? 환경 변수 일반적으로 시스템은 다양한 환경에서 실행되곤 합니다. 간단하게 나누어보면 개발 환경, 프로덕션 환경으로 나눌 수 있을겁니다. 이렇게 나누는 이유는 개발/테스트 환경이 프로덕션 환경의 데이터에 영향을 주지 않기 위해서입니다. 또한 데이터베이스도 두개로 나뉘는데 이때 두개의 데이터베이스 연결..
2023.06.10 -
NestJS 帶你飛! 시리즈 번역 15# Dynamic Module
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. https://docs.nestjs.com/fundamentals/dynamic-modules 이전의 포스팅에서 Module의 기본 사용 방법에 대해 소개한 적이 있습니다. 그런데 미처 소개하지 못했던 강력한 기능이 있습니다. 바로 동적 모듈(Dynamic Module, 動態模組)인데요. 오늘은 이 동적 모듈에 대해 이야기 하고자 합니다. 다이나믹 모듈은 아주 쉽게 Provider의 내용을 원하는대로 커스터마이징 할 수 있습니다. Module의 Provider를 동적화 한다. 무슨 말일..
2023.06.09 -
NestJS 帶你飛! 시리즈 번역 14# Custom Decorator
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. 데코레이터(Decorator, 裝飾器)는 디자인 패턴중 하나로, 일부 프로그래밍 언어에서 이 디자인 패턴을 구현할 수 있습니다. 최근 TypeScript와 Javascript에서도 해당 기능을 추가하였으며, Nest는 데코레이터를 최대한 활용하여 기능을 쉽게 적용할 수 있도록 지원합니다. 개발속도, 가독성을 고려한다면 데코레이터는 유용한 도구가 아닐수 없습니다. Custom Decorator Nest는 많은 데코레이터를 지원하는데 특정 상황에선 내장 데코레이터를 사용하여도 해결이 되지 ..
2023.06.07 -
NestJS 帶你飛! 시리즈 번역 13# Guard
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. Guard란 무엇인가요? Guard란 검사 로직인데요. 회사의 보안 시스템과 같습니다. 카드를 통해 출입 통제를 관리한다고 하면 카드를 찍지 않으면 입장을 할 수 없겠지요. 이런 시스템은 주로 신원 확인에 사용됩니다. 승인되지 않은 요청이 있을 시 Guard는 해당 요청을 막아버립니다. Express의 Guard는 Middleware 레이어에 위치하여 처리하는데요. 이 처리방식이 그렇게 안좋은것만은 아닙니다. 단지 next()를통해 실행되는것이 무엇인지만 잘 명시해준다면요. Nest는 ..
2023.06.06 -
NestJS 帶你飛! 시리즈 번역 12# Interceptor
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. Interceptor란 무엇인가요? 가로채는 사람(것) 이라는 뜻입니다. 이는 관점 지향 프로그래밍(Aspect Oriented Programming, 剖面導向程式設計)에 영감을 받아 만들어졌습니다. 원래 있던 기능의 확장을 지원합니다. 특징은 아래와 같습니다. Controller의 메서드를 실행하기 전/후의 요청을 가로채 응답을 참조하거나 가공할 수 있습니다. Controller의 메서드 실행 전에 발동되는 인터셉터는 Pipe 실행 전에 발동됩니다. Middleware 실행 이후에 실..
2023.06.05 -
NestJS 帶你飛! 시리즈 번역 11# Middleware
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. Middleware는 무엇인가요? Middleware는 라우터 처리 전에 실행되는 함수입니다. 요청객체와 응답객체에 접근할 수 있으며 next()를 통해 해당 요청에 대한 처리를 이어갈 수 있습니다. ex: 다음 Middleware 실행, 실제 Resource 처리 단계 진입 등.. Express를 써봤다면 Middleware 개념이 그렇게 낯설진 않을겁니다. 사실 Nest의 Middleware와 Express의 Middleware는 같습니다. 그렇다면 Middleware는 어떤 기능을..
2023.06.04