상세 컨텐츠

본문 제목

[TIL] 2024.03.07 NestJS provider 정리

카테고리 없음

by 재호링 2024. 3. 8. 01:17

본문


NestJS에서 Provider는 의존성 주입(DI)을 위해 사용되는 핵심 개념

NestJS는 의존성 주입을 통해 코드의 모듈성과 테스트 용이성을 향상시킴

애플리케이션의 컴포넌트들을 느슨하게 결합함

 

간단히 말해서, Provider는 NestJS 애플리케이션에서 사용되는 클래스, 객체, 값 등을 제공하는 것

이것들은 주로 서비스, 리파지토리, 팩토리, 컨트롤러와 같은 애플리케이션의 다양한 부분에서 사용됨

 

의존성 주입: NestJS에서 Provider는 의존성 주입을 통해 다른 클래스나 컴포넌트에 주입됨

이를 통해 코드의 결합도를 낮추고 모듈 간의 의존성을 관리함

모듈성: NestJS 애플리케이션은 모듈로 구성됨

각 모듈은 Provider를 정의하고 다른 모듈에서 사용할 수 있음

이를 통해 코드를 모듈별로 구성하고 재사용 가능한 컴포넌트로 만듬

단위 테스트 (Unit Testing): 의존성 주입을 통해 테스트하기 쉬움

Provider를 Mock으로 대체하여 각 컴포넌트를 테스트할 수 있음(JS에서도 가능)

라이프사이클 관리: NestJS는 Provider의 라이프사이클을 관리함

주로 Singleton 또는 Transient와 같은 라이프사이클 옵션을 제공하여 각 Provider의 인스턴스를 관리함