SOLID 원칙 중 '의존성 역전 원칙(DIP, Dependency Inversion Principle)'이란?
어려움 freeCodeCamp해설
DIP는 구체적인 구현이 아닌 추상화에 의존하도록 설계하는 원칙입니다. 예를 들어 UserService가 MySQLRepository를 직접 사용하지 않고 Repository 인터페이스에 의존하면, PostgreSQL로 교체해도 UserService 코드를 수정할 필요가 없습니다.
DIP는 구체적인 구현이 아닌 추상화에 의존하도록 설계하는 원칙입니다. 예를 들어 UserService가 MySQLRepository를 직접 사용하지 않고 Repository 인터페이스에 의존하면, PostgreSQL로 교체해도 UserService 코드를 수정할 필요가 없습니다.