11장 시스템
3 의존성 주입
- 사용과 제작을 분리하는 강력한 메커니즘
- 제어 역전 기법을 의존성 관리에 적용한 메커니즘
- 책임을 전담할 ‘전담’ 메커니즘으로 main이나 특수 컨테이너를 사용한다
→ 스프링 프레임워크 : 자바 DI 컨테이너 제공
- 객체 사이 의존성은 XML 파일에 정의
- 필요할 때까지 객체를 생성하지 않고, 최적화에 쓸 수 있도록 팩토리를 호출
4 확장
- 애자일 개발 : 스토리에 맞춘 시스템 조정 및 확장
5 자바 프록시
- 자바 프록시는 단순한 상황(개별 클래스에서 메소드 호출을 감싸는 경우)이 좋은 예다
- 하지만 JDK가 제공하는 동적 프록시는 인터페이스만 지원하며, 클래스 프록시를 사용하려면 복잡하고 깨끗한 코드와 멀어진다 (즉 적합하지 않다)