객체 지향 설계와 스프링
스프링은 DI와 DI 컨테이너로 다형성, OCP, DIP를 가능하게 지원해준다.
정리
모든 설계에 역할과 구현을 분리해야 한다.
자동차 예시를 떠올려보자.
애플리케잇연 설계도 언제든지 유연하게 변경할 수 있어야 한다.
이상적으로는 모든 설계에 인터페이스를 부여하는 게 좋다.
하지만 추상화하는 비용이 발생한다.
기능을 확장할 가능성이 없다면 구체 클래스를 직접 사용한다.
향후 꼭 필요할 때 리팩터링 해서 인터페이스를 도입하는 것도 방법이다.
Last updated