
3. 스프링 핵심 원리 이해2 - 객체 지향 원리 적용
·
Spring/기본
1. 기존 설계 문제점 - 문제점 위 자료를 보자. 정책을 변경하려면 클라이언트인 OrderServiceImpl 코드를 변경해야 한다. 이는 다형성을 활용하여, 역할(interface)과 구현(class)을 분리했지만 - OCP(: 변경하지 않고 확장이 가능하다)를 위반하는 것을 확인할 수 있다. - 또한 인터페이스뿐만 아니라 구체 클래스에도 의존하고 있다. DIP(: 구체화가 아닌, 추상화에 의존해야한다.) 위반 - 해결방안 인터페이스에만 의존하도록 코드를 변경해야한다. 즉, 클라이언트인 OrderServiceImpl에 구현 객체를 대신 생성하고 주입해주어야 한다. AppConfig : 애플리케이션의 전체 동작 방식을 구성(config)하기 위해, 구현 객체를 생성하고 생성자를 통해서 연결하는 책임을 ..