애플리케이션을 개발하다보면 필연적으로 맞닥뜨릴 수 밖에 없는 상황이 몇가지가 있다. 그 중 하나가 바로 의존성 관리(Dependency Control)이다. 백엔드 애플리케이션에서는 다양한 제어 역전(IoC; Inversion of Control) 컨테이너를 이용해서 적용이 가능하다. 최신 프론트엔트 프레임워크 역시도 의존성 주입(DI; Dependency Injection)과 관련한 기능들을 포함하고 있다. 하지만 자바스크립트 언어의 특성인지는 몰라도 백엔드쪽의 IoC 컨테이너와는 다른 형식으로 DI를 구현한다. 이 포스트에서는 []

지난 포스트에서는 FluentValidation 라이브러리를 이용하여 유효성 검사 로직에 대해 어떻게 유닛테스트를 진행하는지에 대하여 간단하게 알아 보았다. 이번 포스트에서는 이 FluentValidation 라이브러리를 아예 IoC 콘테이너에 넣어서 좀 더 깔끔한 코드를 유지하는 방법에 대해 논의해 보기로 한다. 여기에 쓰인 코드는 아래 리포지토리에서 확인할 수 있다. https://github.com/devkimchi/FluentValidation-Sample FluentValidation 라이브러리를 이용한 ASP.NET MVC 모델 유효성 검사 FluentValidation 라이브러리 유닛 []

객체지향 프로그래밍에서 Dependency Injection (DI) 개념은 아주 중요한데, 개별 객체들 사이에 의존성이 줄어들어야 – 다른 말로 느슨한 결합 (loosely coupled)을 이루거나 – 유지보수 및 확장성, 그리고 테스트 가용성 측면에서 많은 이득을 볼 수 있다. 일반적으로 Java 또는 C# 프로그래밍에서는 아래와 같은 형태로 DI를 구성한다.

위의 코드는 C#으로 구현한 간단한 Web API 콘트롤러이다. 콘트롤러 인스턴스를 []

  • 1