Revert "archive 삭제"

This reverts commit 973af1937e.
This commit is contained in:
2026-04-09 10:17:21 +09:00
parent 3ff1886267
commit 69ab355bb9
245 changed files with 3799 additions and 0 deletions
@@ -0,0 +1 @@
{"_joins":[],"_contexts":[],"_links":[],"_sort":{"field":"rank","asc":false,"group":false,"recursive":false},"_template":"","_templateName":"","defaultSticker":"","readMode":false}
@@ -0,0 +1,3 @@
컨트롤러는 **클라이언트 요청을 처리**하는 역할을 합니다.
HTTP 요청을 받아 적절한 서비스로 전달하고, 서비스에서 처리된 결과를 클라이언트에게 반환합니다.
`@Controller()` 데코레이터로 정의합니다.
@@ -0,0 +1,3 @@
모듈은 NestJS 애플리케이션의 기본적인 빌딩 블록입니다.
각 모듈은 관련된 컴포넌트(서비스, 컨트롤러 등)를 그룹화하여 애플리케이션의 기능을 모듈화합니다.
`@Module()` 데코레이터로 정의하며, 하나의 애플리케이션은 여러 모듈로 구성될 수 있습니다.
@@ -0,0 +1,5 @@
nestjs는 express를 기반으로 구동되며
express에 기본적인 뼈대를 만들어놓은 형태
- 너무나도 자유도가 높은 nodejs의 단점을 보완해줌
- 아주 좋은 아키텍처와 구조를 가짐.
@@ -0,0 +1,2 @@
파이프는 데이터 변환 및 유효성 검사에 사용됩니다.
예를 들어, 들어오는 데이터가 올바른 형식인지 검증하거나, 데이터를 특정 형식으로 변환하는 데 사용됩니다.
@@ -0,0 +1,3 @@
프로바이더는 서비스, 레포지토리, 팩토리 등 다양한 유형의 클래스를 포함할 수 있습니다.
NestJS에서는 **의존성 주입**을 통해 프로바이더를 주입받습니다.
프로바이더는 `@Injectable()` 데코레이터로 정의합니다.
@@ -0,0 +1,3 @@
서비스는 **비즈니스 로직**을 담당하는 클래스입니다.
데이터베이스와 상호작용하거나 외부 API를 호출하는 등의 로직을 처리하며, 컨트롤러와 상호작용합니다.
서비스는 **의존성 주입**을 통해 다른 서비스나 리포지토리 등을 주입받습니다.
@@ -0,0 +1,47 @@
nodejs -> express -> nestjs
nestjs는 express를 기반으로 구동되며
express에 기본적인 뼈대를 만들어놓은 형태
너무나도 자유도가 높은 nodejs의 단점을 보완해줌
nestjs가 express를 기반으로 구동되는게 아니고 아에 express 위에서 구동됨.
디폴트는 express고 festify로 변경도 가능한데
nestjs 사용법에 맞게만 잘 코딩해놓으면
festify로 아주 쉽게 변경이 가능하단다.
express는 심플하고 festify는 성능이 좋음.
아주 좋은 아키텍처와 구조를 가짐.
모듈: 어플리케이션의 일부, 모듈이 여럿 모여서 하나의 어플리케이션이 됨.
npm run start:dev
npm 명령어로 빌드해야함.
nest start hi-nest 로 빌드하면 자동새로고침 같은 기능들이 작동을 안함.
controller: url을 가져오고 함수를 실행함 express의 router같은 존재
함수를 실행해주는정도의 역할만 해야함. 컨트롤러에 함수 선언이 있으면 안됨.
provider: service를 이야기함. 왜 provider라고 추가하는건지..?
provider에 등록된 service들의 dependency injection을 함.
validation pipe 완전 기깔나는 기능
npm i class-validator class-transformer // validation pipe
npm i @nestjs/mapped-types // PartialType
app controller 에서는 뭘 하면 될까?
앱에 필요한 모든 모듈들을 여기서 등록함.
서브 모듈들에는 모듈이 있을 필요가 없음.
컨트롤러, 프로바이더만 있으면 됨.
Insomnia http 테스트 tool
Jest
Jest는 단순함에 초점을 맞춘 유쾌한 JavaScript 테스팅 프레임워크입니다.
유닛테스트, E2E 테스트가 가능한데
유닛테스트는 아주 작은단위 (함수 하나 단위)의 테스트이고
E2E 테스트는 사용자의 입장에서의 처음부터 끝까지 전부 테스트함.