Notice
Recent Posts
Recent Comments
Link
관리 메뉴

김종권의 iOS 앱 개발 알아가기

[Clean Architecture] 11. SOLID 원칙 - ISP (Interface Segregation Principle) 본문

Clean Architecture/Clean Architecture 기초

[Clean Architecture] 11. SOLID 원칙 - ISP (Interface Segregation Principle)

jake-kim 2021. 6. 23. 22:26

ISP

  • 필요 이상으로 많은걸 포함하는 모듈에 의존하는 것을 분리하기 위해, 의존 범위를 interface를 통해 좁히는 것
  • User1은 op1()만 사용, User2는 op2()만 사용, User3는 op3()만 사용할 때 아래 구조
    • ISP에 어긋난 구조: User1에서는 op2와 op3를 전혀 사용하지 않아도 User1의 소스 코드는 이 두 메서드에 의존하는 관계
    • ISP를 따르는 구조: User1, User2, User3 각각 기능에 따라 Interface를 따라서 의존 범위를 좁혀줌으로서 op1이 변경되어도 User2, User3에 영향이 가지 않도록 설계
ISP에 어긋난 구조 ISP를 따르는 구조

* 참고

Clean Architecture

Comments