로깅과 NestJS 인터셉터에 대하여응답 및 요청 Logging Interceptor 추가하기 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), FP (Functional Programming), and FRP (Functional Readocs.nestjs.com 로깅(Logging)로깅은 ..
extends와 implements의 차이에 대하여 서론 extends는 자바스크립트, 타입스크립트에서 어떠한 클래스를 상속 받기 위해 사용하는 키워드입니다. implements는 타입스크립트에서 인터페이스를 구하기 위해 사용하는 키워드입니다. extends extends 키워드는 어떠한 class의 하위 클래스를 생성할 때 사용합니다. (관련문서) 클래스 간의 상속을 구현하기 위해 사용합니다. `class A extends B { ... }`는 클래스 A가 클래스 B의 모든 멤버(메서드, 속성 등)를 상속받는다는 것을 의미합니다. 단일 상속만 허용되므로 한 클래스는 여러 클래스를 동시에 확장할 수 없습니다. 내장 객체 및 사용자 정의 클래스의 하위 클래스를 만드는 데에 사용됩니다. implements ..
NestJS에 Exception filters를 추가합니다. 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), FP (Functional Programming), and FRP (Functional Readocs.nestjs.com 서론애플리케이션에서 발생하는 에러는 관련 정보를 포함하도록 ..
상속과 프로토타입 - JavaScript | MDN JavaScript는 동적 타입이고 정적 타입이 없기 때문에, (Java 또는 C++와 같은) 클래스 기반 언어에 경험이 있는 개발자에게는 약간 혼란스럽습니다. developer.mozilla.org 프로토타입(Prototype) 자바스크립트는 prototype 기반의 객체지향 프로그래밍 언어이다. 프로토타입의 직역은 '원형'입니다. 이름 그대로 프로토타입은 다른 객체로부터 상속을 받는 객체의 원형을 나타냅니다. 만들어진 객체는 또 다른 프로토타입으로 다른 객체의 원형으로 사용될 수 있죠. [[Prototype]] 자바스크립트의 모든 객체는 내부슬롯 [[Prototype]]을 가지는데요. 여기에는 해당 객체의 프로토타입에 대한 참조가 저장됩니다. 참조될..
Nest에서 스웨거를 사용하는 방법을 설명합니다. API 문서화 API 문서화란 API 사용 방법을 문서로 정리하는 것을 말합니다. 보통 엔드포인트와 HTTP 메서드, 요청 및 응답 형식, 인증 방법, 예시 등이 내용으로 들어갑니다. API 문서는 워드나 노션 이용해 개발자가 직접 수기로 작성할 수도 있고, 스웨거와 같은 도구를 이용할 수도 있습니다. 쉽게 말해 `'API 요청 주소는 여기고요. 요청 파라미터는 이런 것들이 있습니다. 이렇게 호출하면 이런 결과가 나와요~! ✋'` 와 같이 API 사용 설명서를 만드는 일이라고 할 수 있습니다. 공공데이터포털에서 예시를 쉽게 찾아볼 수 있습니다. 왜 필요한가요? API 사용자의 편의를 위해서 입니다! 사용자는 보통 프론트엔드 개발자나, 해당 API를 이용해..
아래글에서 이어지는 내용입니다. [JS] 자바스크립트가 데이터를 할당하는 방법 (feat. 불변성, 가변성) 도서 코어 자바스크립트를 내용 일부를 정리한 글입니다. 자바스크립트의 데이터 할당 과정과 변수의 불변성과 가변성에 대하여 자바스크립트의 타입 자바스크립트의 데이터 타입은 크게 원시 munak.tistory.com 서론 이전 글에서 원시값과 객체의 데이터 할당에 대해 작성했었습니다. 데이터 할당 과정이 다르니, 복사의 과정에도 차이가 발생하게 됩니다. 원시값(Primitive values)의 복사 아래 간단한 예시를 들어 보겠습니다. let name1 = 'Rimo' let name2 = name1 console.log(name1, name2) // Rimo, Rimo name1은 'Rimo'라는 ..
B-Tree와 B+Tree트리에 대하여 [DB] 인덱스(Index) 데이터 베이스 인덱스에 대하여 인덱스(Index)란? 인덱스는 데이터 베이스 레코드에 빠르게 접근하기 위해서 키와 값(포인터, 주소)의 쌍으로 구성되는 데이터 구조입니다. 데이터베이스를 책이 munak.tistory.com B+Tree는 리프 노드에만 데이터를 저장하고, 연결 리스트로 구성되어 있기에 범위 검색에 더 효율적입니다. 인덱스 관련한 글에서 B+Tree의 장점을 위와 같이 설명했었습니다. 왜 B-Tree에 비해 B+Tree가 더 범위 검색에 효율적인 걸까요? 이번글에서 정리해보려고 합니다. B-Tree B-Tree는 널리 쓰이는 인덱스 자료구조 중 하나입니다. B-Tree는 이진 트리를 확장한 형태로, 하나의 노드가 가질 수 ..
도서 코어 자바스크립트를 내용 일부를 정리한 글입니다. 자바스크립트의 데이터 할당 과정과 변수의 불변성과 가변성에 대하여 자바스크립트의 타입 자바스크립트의 데이터 타입은 크게 원시값과 객체, 이렇게 두 종류로 나눌수 있습니다. 원시 값(Primitive values) 다음과과 같은 종류가 있으며, 불변성을 가집니다. Number String Boolean Symbol Null Undefined BigInt 객체(Object) 참조형이라고도 하며, Object 하위 여러 타입이 속합니다. 가변성을 가집니다. Array Function RegExp Map Set WeakMap WeakSet 여기서 말하는 불변성과 가변성이 뭘까요? 아래에서 살펴보겠습니다. 원시 값(Primitive values)의 데이터 할..