第9章 接口隔离原则(ISP)
使用多个专门的接口比使用单一的总接口要好。
换言之,从一个客户类的角度来讲:一个类对另外一个类的依赖性应当是建立在最小的接口上的。
9.1 what?
角色隔离原则
定制服务
每一个Java接口都仅仅将客户端需要的行为暴露给客户端,而没有将客户端所不需要的行为放到接口中。
适配器模式
接口污染
迪米特法则要求任何一个软件实体,除非绝对需要,不然不要与外界通信。即使必须进行通信,也应当尽量限制通信的广度和深度。
符合迪米特法则。
9.3 定制服务的例子
定制服务:如果客户端仅仅需要某一些方法的话,那么就应当向客户端提供这些需要的方法,而不要提供不需要的方法。
效果:
1)这样做很整洁
2)系统的可维护性
备忘录模式*
迭代子模式*