Nest.js(10)
-
DTO & 유효성 검사 (ValidationPipe)
//main.ts app.useGlobalPipes( new ValidationPipe() ) npm i class-validator class-transformer //create-movie.dto.ts import { IsNumber, IsString } from "class-validator"; export class CreateMovieDto{ @IsString() readonly title: string; @IsNumber() readonly year: number; @IsString({ each: true }) readonly genres: string[]; } 유효성 검사를 위해 작성한다. 빠진 값이 있거나 타입에 맞지 않는 값이 있을 경우 에러를 내보낸다 하지만 , 여기까지만 하면 추가로 ..
2022.08.27 -
Nest.js 기본
Nest.js를 Express 만큼 다루고 싶다. 빠른 시일내에 될 예정 @ (데코레이터) 클래스 위의 함수, 클래스를 위해 움직인다(?) 데코레이터는 클래스를 필수 메타데이터와 연결하고 Nest가 라우팅 맵을 만들 수 있도록 합니다. 클래스 데코레이터 클래스의 정의를 읽거나 수정 (constructor) d.ts 파일, declare 클래스 메서드 데코레이터 메서드의 정의를 읽거나 수정 (target, propertyKey, propertyDescriptor) d.ts 파일, declare 클래스, 오버로드 메서드 접근자 데코레이터 접근자의 정의를 읽거나 수정 (target, propertyKey, propertyDescriptor) d.ts 파일, declare 클래스 속성 데코레이터 속성의 정의를 ..
2022.08.26 -
TypeORM
TypeORM이란? TypeORM은 node.js에서 실행되고 TypeScript로 작성된 객체 관계형 Mapper 라이브러리이다. TypeORM은 MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana 및 WebSQL과 같은 여러 데이터베이스를 지원한다. ORM (Object Relational Mapping) 이란? 객체와 관계형 데이터베이스의 데이터를 자동으로 변형 및 연결하는 작업. ORM을 이용한 개발은 객체와 데이터베이스의 변형에 유연하게 사용할 수 있다. 객체지향 프로그래밍은 클래스 사용하고 관계형 데이터베이스는 테이블을 사용하므로 객체 모델과 관계형 모델 간 불일치가 존재. TypeORM vs Pure Javascript c..
2022.08.23 -
Nest.js 설치 및 시작
강의 : John Ahn - 따라하며 배우는 NestJS Node가 설치돼있다는 것을 전제로 터미널에서 sudo npm i -g @nestjs/cli 를 입력한다. 설치 완료 후 프로젝트 폴더로 이동 후 터미널에 nest new ./ 를 입력하면 완료. Nest Js 가 뭐야? - 아키텍처 NestJS는 서버 측 어플리케이션 개발에 있어 아키텍처의 문제를 해결하기 위해 등장 Express는 사용하기도 쉽고 성능도 뛰어나지만 아키텍처에 관한 정의나 기능을 제공X 팀 또는 사람마다 아키텍처가 다르면 이를 이해하기 위한 비용 또는 개발 전에 아키텍처를 선정하는 커뮤니케이션 비용이 증가 NestJS는 아키텍처에 대한 정의를 제공하기 때문에 동일한 아키텍처에서 다른 개발자가 작성한 코드를 쉽게 이해할 수 있다. ..
2022.08.17