设计模式第七种原则

来源:互联网 发布:淘宝店铺被关闭 编辑:程序博客网 时间:2024/06/05 07:53


      看完了设计模式的七种原则,这七种原则的所体现的思想就是面向对象思想,就是让我们尽可能降低耦合性。接下来介绍第七种原则——接口隔离原则。

 

这是什么?


      这个原则说明客户端不应该依赖他不需要的接口,一个类对另一个类的依赖应该建立在最小的接口上。也就是说,我们要尽量建立单一接口,将接口细化,里面的方法尽量少。也就是为类建立专用的接口。

 

为什么?


       类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。

 

怎么做?


       将接口I拆分成几个独立的接口,类A和类C分别与他们需要的接口建立依赖关系。

 

注意什么?

 

       接口尽量小,但是要有限度。对接口进行细化可以提高程序设计灵活性是不挣的事实,但是如果过小,则会造成接口数量过多,使设计复杂化。所以一定要适度。

       为依赖接口的类定制服务,只暴露给调用的类它需要的方法,它不需要的方法则隐藏起来。只有专注地为一个模块提供定制服务,才能建立最小的依赖关系。

       提高内聚,减少对外交互。使接口用最少的方法去完成最多的事情。

       运用接口隔离原则,一定要适度,接口设计的过大或过小都不好。设计接口的时候,只有多花些时间去思考和筹划,才能准确地实践这一原则。

 

与单一职责原则的区别?


      这看起来很像单一职责原则,但是并不是,单一职责原则注重的是职责,而接口隔离原则注重的是对接口依赖的隔离。并且单一职责原则主要约束的是类,注重程序的实现;接口隔离原则注重的是接口,针对的主要是抽象以及程序整体框架的构建