본문 바로가기
이펙티브 자바

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

by 아토로 2022. 7. 17.
  • 사용하는 자원에 따라 동작이 달라지는 클래스는 정적 유틸리티 클래스나 싱글턴 방식이 적합하지 않다.
  • 의존 객체 주입이란 인스턴스를 생성할 때 필요한 자원을 넘겨주는 방식이다.
  • 이 방식의 변형으로 생성자에 자원 팩터리를 넘겨줄 수 있다.
  • 의존 객체 주입을 사용하면 클래스의 유연성, 재사용성, 테스트 용이성을 개선할 수 있다.

완벽 공략

팩터리 메소드 패턴

스프링 IoC

  • Inversion of Control
    • 자기 코드에 대한 제어권을 자기 자신이 가지고 있지 않고 위부에서 제어하는 경우
    • 제어권: 인스턴스를 만들거나, 어떤 메소드를 실행하거나, 필요로하는 의존성을 주입 받는 등…
  • 스프링 IoC 컨테이너 사용 장점
    • 수많은 개발자에게 검증되었으며 자바 표준 스팩(@Inject)도 지원한다.
    • 손쉽게 싱글톤 Scope을 사용할 수 있다.
    • 객체 생성 관련 라이프사이클 인터페이스를 제공한다.

댓글