반응형

2장 객체 생성과 파괴

 

아이템 5. 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라

 

사용하는 자원에 따라 동작이 달라지는 클래스에는 정적 유틸리티 클래스나 싱글턴 방식이 적합하지 않음

 

의존 객체 주입 패턴

인스턴스 생성 시 생성자에 필요한 자원을 넘겨주는 방식

 

예시

public class SpellChecker {
    
    private final Lexicon dictionary;
    
    public SpellChecker(Lexicon dictionary) {
        this.dictionary = Objects.requireNonNull(dictionary);
    }
}

 

특징

  • 장점

    • 유연성
    • 테스트 용이성 개선
  • 단점

    • 큰 프로젝트에서 프로젝트를 어지럽게 만듦 => 의존 객체 주입 프레임워크 사용

 

TODO

  • 한정적 와일드카드 타입
반응형

'Java > OOP' 카테고리의 다른 글

[Effective Java] 2장. 아이템6  (0) 2022.07.18
[Effective Java] 2장. 아이템4  (0) 2022.07.16
[Effective Java] 2장. 아이템3  (0) 2022.07.16
[Effective Java] 2장. 아이템2  (0) 2022.07.15
[Effective Java] 2장. 아이템1  (0) 2022.07.14

+ Recent posts