개발 문서 번역/NestJS(32)
-
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 -
NestJS 帶你飛! 시리즈 번역 10# Pipe (하)
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. 전 포스팅에서 객체 양식에 있는 자료들을 어떻게 검증해야 하는지에 대해 언급한 적이 있습니다. DTO, ValidationPipe, class-validator와 class-transformer를 사용하기만 하면 이 문제를 쉽게 해결할 수 있습니다. 먼저 npm을 통해 class-validator와 class-transformer를 설치하도록 하겠습니다. $ npm install --save class-validator class-transformer DTO 양식 검증 이 검증 로직을 ..
2023.06.03 -
NestJS 帶你飛! 시리즈 번역 09# Pipe (상)
이 포스팅은 「NestJS 기초실무 가이드 : 강력하고 쉬운 Node.js 웹 프레임워크로 웹사이트 만들기」 (서명: NestJS 基礎必學實務指南:使用強大且易擴展的 Node.js 框架打造網頁應用程式) 책이 출간되었습니다. Pipe란 무엇인가요? Pipe는 사용자가 입력한 파라미터를 처리하는데 사용됩니다. (ex: 데이터 검증, 데이터 변경 등) 요청이 라우터 핸들러로 전달되기 전 요청 객체를 변환하거나 검사할 수 있습니다. 미들웨어와 비슷하나 미들웨어를 현재 요청이 어떤 핸들러에서 수행되고 어떤 매개변수를 갖는지에 대한 실행 context를 알지 못하기 때문에 모든 context에서 사용이 불가능합니다. 손님이 주문한 후 웨이터가 메뉴를 다시 한번 더 검사하는것과 비슷합니다. Nest Pipe Nest에..
2023.06.02