반응형 의존성 주입1 Item5 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라 사용하는 자원에 따라 동작이 달라지는 클래스는 정적 유틸리티 클래스나 싱글턴 클래스 방식이 적합하지 않다. - 유연하지 않고 테스트하기 어렵다!! 예를 들어 SpellChecker가 Dictionary를 사용하고 Dictionary를 정적 유틸리티 클래스 혹은 싱글턴 클래스 방식으로 만들었다면 하나의 사전에 대해서만 SpellChecker를 작동시킬 수 있다. 하지만 국적에 따라 다른 사전을 사용한다면 유연하게 변경할 수 없으며 다른 국적의 사전은 테스트도 어려워진다. // 정적 유틸리티 클래스 public class SpellChecker { private static final Lexicon dictionary = ...; private SpellChecker() {} // 객체 생성 방지 publi.. 2022. 12. 7. 이전 1 다음 반응형