接口隔离原则

接口隔离原则

1. 接口定义

  1. 广义:
    声明一个类,然后用new关键字产生一个实例,它是对一个类型的事物的描述,这是一种接口。
  2. 狭义:
    类接口,关键字interface定义的接口。

2. 隔离的定义

  • Clients should not be forced to depend upon interfaces that they don't use.(客户端不应该依赖它不需要的接口。)
  • The dependency of one class to another one should depend on the smallest possible interface.(类间的依赖关系应该建立在最小的接口上。)
    概括为一句话:建立单一接口,不要建立臃肿庞大的接口。再通俗一点讲:接口尽量细化,同时接口中的方法尽量少。
    接口隔离原则与单一职责的审视角度是不相同的,单一职责要求的是类和接口职责单一,注重的是职责,这是业务逻辑上的划分,而接口隔离原则要求接口的方法尽量少。

3. 接口隔离原则

  1. 接口尽量要小,但是首先必须满足单一职责原则
  2. 接口要高内聚,具体来讲就是接口中少公布public方法
  3. 定制服务,只提供使用者需要的方法
  4. 接口设计是有限度的

4. 最佳实践

  1. 一个接口只服务于一个子模块或业务逻辑;
  2. 通过业务逻辑压缩接口中的public方法,时常回顾接口;
  3. 已经被污染了的接口,尽量去修改,若变更的风险较大,则采用适配器模式进行转化处理;
  4. 了解环境,拒绝盲从。深入了解业务逻辑,根据需求划分接口粒度。




posted @ 2016-10-31 15:05  qianzi  阅读(118)  评论(0编辑  收藏  举报