TIL ( Today I Learned)
-
14주차 TIL (4)TIL ( Today I Learned) 2023. 2. 16. 11:09
오늘은 어제 작성했던 dto 파일 수정과 컨트롤러 파일 수정, 서비스 파일 작성을 해보도록 하겠다. 우선 어제 작성했던 create, update, delete dto 파일은 똑같은 유효성 검사를 하기 때문에 코드가 길어지고 중복되는 문제점이 있다. 그래서 우리는 update, delete dto 를 수정해줄 것이다. 그러기 위해서 우선 첫번째 우리는 update, delete dto를 create dto 에서 상속받아 사용을 할 것이기 때문에 우선 다음과 같은 패키지를 받는다. $ npm i @nestjs/mapped-types 우선 첫번째로 update dto 는 create 와 똑같은 유효성을 검사하기 때문에 PartialType 을 상속받을 것이고, 두번째로 delete dto 는 create 에..
-
14주차 TIL (3)TIL ( Today I Learned) 2023. 2. 15. 17:56
지금까지는 간단하게 Nest.js 에 대한 개념과 용어 설명을 잠깐 살펴보았는데 이제부터는 실습을 해보려고 한다. 우선 Nest.js 프레임워크를 설치하기 위해선 $ npm i -g @nestjs/cli 터미널에 위와같은 명령어로 설치 할 수 있다. Nest.js 설치 후 커맨드에 nest 라고 쳐보면 다음과 위와 같은 명령어들이 있는것을 볼 수 있다. 이제부터 새로운 프로젝트를 생성하고 구조를 살펴보겠다. $ nest new [프로젝트명] 일단 nest new 를 통하여 내가 만들고자 하는 프로젝트를 생성해준다. 우리는 npm을 통해 설치할 것이므로 그냥 Enter 를 눌러주면 된다. 처음 이렇게 프로젝트를 생성할 때 나는 설치가 완료되지 않고 계속 이상태로만 진행되길래 무슨 문제인가 싶어 계속 찾아본..
-
14주차 TIL (2)TIL ( Today I Learned) 2023. 2. 14. 20:55
오늘은 Nest.js 를 사용하게 되면서 알아야할 기본용어 몇가지만 살짝 정리해 보려고 한다. 데코레이터 Nest.js 에서 데코레이터란 @ 기호를 통해 사용할 수 있다. 또한 데코레이터는 해당 클래스나 함수가 어떤 역할을 하는지에 대해 Nest.js 에게 알려주는 역할을 한다. 예를 들면 import { Module } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; @Module({// 모듈로서의 역할을 수행하겠다 -> Nest.js 에게 말함 imports: [], controllers: [AppController], providers: [..
-
14주차 TIL (1)TIL ( Today I Learned) 2023. 2. 13. 14:47
오늘부터 node.js 의 웹 프레임 워크중 하나인 nest.js 를 배우게 되었는데 코드를 설명하기 전에 오늘은 간단하게 개념에 대한 부분만 정리하려고 한다. express 의 아쉬운점 express 는 Node.js 를 공부하다보면 필연적으로 접하게 되는 웹 프레임 워크이다. 그리고 express 를 공부하기위해 책이나 영상에서는 express를 거의 공식문서 처럼 다룰 정도로 인기가 많고, 많은 사람들이 사용하는 것이다. express 의 기본 구조 const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Hello World !'); }) app.listen(3000, () => ..
-
10주차 TIL (4)TIL ( Today I Learned) 2023. 1. 19. 18:06
오늘 타입스크립트를 이어서 공부하던 도중 함수의 리턴타입이 Promise 다. 라는 부분이 있었는데 Promise 가 무엇인가를 생각 하다가 분명 저번에 promise 에 대해 배웠었는데 머리속에 남지 않아 다시 검색하며 돌아가보니 promise 를 이해하기 위해선 callback 함수를 잘 이해하는 것이 도움이 된다는 글들이 많아 그럼 callback 함수가 무엇인가로 넘어가게 되었다. 그렇게 되면서 생각을 해 보니 내가 callback 함수와 promise에 대해 제대로 이해하지 않고 개념이 부족하다고 생각하여 오늘 다시한번 정리를 해보려고 한다. 우선 callback 함수부터 정리해보겠다. 콜백 함수란 비동기 처리를 하기 위해 사용한다. 다른 함수가 실행을 끝낸 뒤 실행되는 함수를 말한다. // e..
-
10주차 TIL (2,3)TIL ( Today I Learned) 2023. 1. 18. 21:53
어제와 오늘 타입스크립트의 기본타입의 사용법에 대해 공부해 보았다. // number let decimal: number = 6; let hex: number = 0xf00d; let binary: number = 0b1010; let octal: number = 0o744; // string let fullName: string = `Bob Bobbington`; // boolean let isDone: boolean = false; // array let list: number[] = [1, 2, 3]; let list1: string[] = ["안", "녕", "하", "세", "요"]; // 제네릭 타입으로 지정해준 경우 let list2: Array = [1, 2, 3]; let list3: A..
-
10주차 TIL (1)TIL ( Today I Learned) 2023. 1. 16. 17:11
오늘부터 타입스크립트에 대해 공부하기 시작했다. 우선 타입스크립트에 대해 간단하게 정의하자면 타입스크립트(TypeScript) 란 자바스크립트의 슈퍼셋인 오픈소스 프로그래밍 언어이다. 또한 자바스크립트에 타입을 부여한 언어이고 이것은 자바스크립트의 확장된 언어라고 볼 수 있다. 타입스크립트는 자바스크립트와 달리 브라우저에서 실행하기 위해서는 파일을 변환(컴파일) 해주어야 사용이 가능하다. 타입스크립트의 기본 타입은 Boolean Number String Object Array Tuple Enum Any Void Null Undefined Never 이 있는데 let num: number = 10; / let string: string = 'hello' 와 같이 타입을 지정하여 사용 할 수 있다. 그렇다면..
-
9주차 TIL (2)TIL ( Today I Learned) 2023. 1. 11. 23:08
오늘은 어제 했던 부분과 이어서 나머지 부분을 해석했다. const http = require('http'); const fs = require('fs'); const ws = new require('ws'); // 웹소켓 Server 생성 const wss = new ws.Server({noServer: true}); // 비어있는 Set 생성자 생성 (중복값은 하나만 허용) const clients = new Set(); function accept(req, res) { // 웹소켓 연결시에 조건이 만족하면 웹소켓을 실행한다. // url 주소가 /ws 가 맞는지, headers.upgrade에 값이 있거나, // headers.upgrade 에 소문자로 websocket 이란 문자열이 있거나, //..