一、接口隔离原则
定义:客户端不应该依赖那些不需要的接口。
一旦一个接口太大,则需要将他分割成一些更细小的接口,使用该接口的客户端仅需知道与之相关的方法即可。
二、分析
接口隔离原则是指使用多个专门的接口(抽象类也是接口),而不使用单一的总接口。每一个接口应该承担一种相对独立的角色。
- 一个接口就只代表一个角色,每个角色都有它特定的一个接口,此时这个原则可以叫做“角色隔离原则”。
- 接口仅仅提供客户端需要的行为,即所需的方法,客户端不需要的行为原则隐藏起来,应当为客户端提供尽可能小的单独的接口,而不需要提供大的总接口。
三、注意事项
- 接口尽量小,但是要有限度,但是如果过小,则会造成接口数量过多,使设计复杂化。
- 为依赖接口的类定制服务,只暴露给调用的类需要的方法。
- 提高内聚,减少对外交互。使接口用最少的方法完成最多的事情。
四、接口隔离原则和单一职责原则对比
- 单一职责原则原注重的是职责;而接口隔离原则注重对接口依赖的隔离。
- 单一指着原则主要是约束类,其次才是接口和方法,他针对的是程序中的实现和细节;而接口隔离原则主要是约束接口,主要针对对象,针对程序整体框架的构建。