定义:用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。
一个类对一个类的依赖应该建立在最小的接口上
建立单一接口,不要建立庞大臃肿的接口
尽量细化接口,接口种的方法尽量少
注意适度原则,一定要适度
优点:符合我们常说的高内聚低耦合的设计思想,从而使得类具有很好的可续性,可扩展性和可维护性。
例如UML图上,可以看出一个类负责一个单一接口,细化接口,方法尽量减少。
我们为Dog类建立一个专用的三个接口,这样可以预防外来变更的扩散,提高系统的灵活性和可维护性
而Bird类也建立了一个接口,里面写了三个方法,虽然看起来没什么问题,也是正常,但只是目前来说的变更扩散可能没有,但以后可能会越来越多,甚至接口的方法臃肿,这样一来的可维护性和灵活性就会减分。
说到这里,很多人会觉的接口隔离原则跟之前的单一职责原则很相似,其实不然。其一,单一职责原则原注重的是职责;而接口隔离原则注重对接口依赖的隔离。其二,单一职责原则主要是约束类,其次才是接口和方法,它针对的是程序中的实现和细节;而接口隔离原则主要约束接口接口,主要针对抽象,针对程序整体框架的构建。
注:该文章主要为个人学习内容