NestJS 4

[NestJS] Nest.js 시작하기

Nest JS란? Node.js 기반의 Express와 같은 서버 개발 프레임워크 중 하나이다. Nest.js는 Express 위에 구축된 프레임워크로, Express의 기능을 확장해서 체계적이고 모듈화된 구조를 제공한다. Express는 정해진 아키텍처가 없어서 개발자마다 다른 구조로 작성하는 경우가 많았다. 다른 사람들이 분석하는데 어려움이 있고 아키텍처부터 파악을 해야해서 코드의 가독성이 떨어진다. 또한 Nest.js는 TypeScript 언어 기반으로 작성이 되어있어서 정적 타입 검사, 객체지향 프로그래밍 등의 기능을 제공한다. 따라서 개발 단계에서의 버그들을 사전에 방지하고 코드의 재사용성과 유지 보수성을 높여준다. Nest.js 시작 1. Nest.js 설치하기 npm i -g @nestjs/..

IT Study/JavaScript 2024.01.07

[NestJS] Repository Pattern

Repository Design Pattern Repository 패턴은 Data Layer를 app의 나머지 부분에서 분리하는 디자인 패턴이다. Service Layer와 Data Source Layer 사이에서 중재자 역할을 하는 Layer다. Service Layer에는 비즈니스 로직인 서비스의 핵심이 되는 로직이 존재한다. Repository 패턴을 적용하지 않으면 비즈니스 로직에서 바로 데이터 베이스에 접근하게 된다. 바로 접근하면 안되는 것일까? Service Layer에서 DB에 바로 접근이 가능하긴 하지만 몇 가지 문제점들이 발생할 수 있다. 프로젝트 진행시 코드가 분리되어있지 않아서 비즈니스 로직에만 집중하기 어렵다. 여러 개의 서비스가 있을 경우, 동일한 쿼리로 DB에 접근한다면 코드의..

IT Study/JavaScript 2024.01.07

[NestJS] 게시글 DB에 저장하기 (with PostgreSQL)

Nest.JS를 처음으로 학습하고자, 코치님께 인프런 무료 강의를 추천받았다 강의평도 좋고 설명도 잘 되어있어서 초보자가 듣기에 매우 좋은 것 같다 다만, 한 가지 문제가 발생했다. 강의가 2021년에 게시되어서 그 사이에 TypeORM 부분의 버전이 달라졌다 ! 강의에서 에러가 나는 부분은 구글링을 통해서 해결을 해야했다 우선 실습 중인 프로젝트는 '게시글 CRUD 구현'이다. 기존 강의 실습 코드 // board.repository.ts import { Board } from './board.entity'; import { EntityRepository, Repository } from 'typeorm'; @EntityRepository(Board) export class BoardRepository..

IT Study/JavaScript 2024.01.04
반응형