第9章 接口隔離原則(ISP)
使用多個專門的接口比使用單一的總接口要好。
換言之,從一個客戶類的角度來講:一個類對另外一個類的依賴性應當是建立在最小的接口上的。
9.1 what?
角色隔離原則
定制服務
每一個Java接口都僅僅將客戶端需要的行為暴露給客戶端,而沒有將客戶端所不需要的行為放到接口中。
適配器模式
接口污染
迪米特法則要求任何一個軟件實體,除非絕對需要,不然不要與外界通信。即使必須進行通信,也應當盡量限制通信的廣度和深度。
符合迪米特法則。
9.3 定制服務的例子
定制服務:如果客戶端僅僅需要某一些方法的話,那么就應當向客戶端提供這些需要的方法,而不要提供不需要的方法。
效果:
1)這樣做很整潔
2)系統的可維護性
備忘錄模式*
迭代子模式*