接口隔离原则 Interface Segregation Principle
定义:
- 客户端不应该依赖它不需要的接口
- 类间的依赖关系应该建立在最小的接口上
我们可以把这两个定义概括为一句话:建立单一接口,不要建立臃肿庞大的接口。再通俗一点讲:接口尽量细化,同时接口中的方法尽量少。
提供给每个模块的都应该是单一接口,提供给几个模块就应该有几个接口,而不是建立一个庞大的臃肿的接口,容纳所有的客户端访问。
接口是我们设计时对外提供的契约,通过分散定义多个接口,可以预防未来变更的扩散,提高系统的灵活性和可维护性。
含义:
这是接口隔离原则的核心定义,不出现臃肿的接口(Fat Interface),但是“小”是有限度的,首先就是不能违反单一职责原则。
根据接口隔离原则拆分接口时,首先必须满足单一职责原则。
高内聚就是要提高接口、类、模块的处理能力,减少对外的交互。
具体到接口隔离原则就是,要求在接口中尽量少公布public方法,接口是对外的承诺,承诺地越少对系统开发越有利,变更的风险也就越少,同时也有利于降低成本。
定制服务就是单独为一个个体提供优良的服务。
接口的设计粒度越小,系统越灵活,这是不争的事实。但是,灵活的同时也带来了结构的复杂化,开发难度增加,可维护性降低,这不是一个项目或产品所期望看到的,所以接口设计一定要注意适度,这个度只能根据经验和常识判断,没有一个固化或可测量的标准。
分享到:
相关推荐
接口隔离原则ISP.zip
IOS设计模式的六大设计原则之接口隔离原则(ISP,Interface Segregation Principle)-附件资源
主要介绍了Java设计模式编程中ISP接口隔离原则的使用,接口隔离原则主张一个类对另外一个类的依赖性应当是建立在最小的接口上,需要的朋友可以参考下
本文实例讲述了PHP面向对象五大原则之接口隔离原则(ISP)。分享给大家供大家参考,具体如下: 设计应用程序的时候,如果一个模块包含多个子模块,那么我们应该小心对模块做出抽象。设想该模块由一个类实现,我们可以...
单一职责原则——SRP 开放封闭原则——OCP Liskov替换原则 —— LSP 依赖倒置原则—— DIP 接口隔离原则—— ISP
本章我们要讲解的是S.O.L.I.D五大原则JavaScript语言实现的第4篇,接口隔离原则ISP(The Interface Segregation Principle)。 英文原文:...
21.S.O.L.I.D五大原则之接口隔离原则ISP 22.S.O.L.I.D五大原则之依赖倒置原则DIP 23.JavaScript与DOM(上)——也适用于新手 24.JavaScript与DOM(下) 25.设计模式之单例模式 26.设计模式之构造函数模式 27.设计...
第十二章 接口隔离原则(ISP) 12.1 接口污染 12.2 分离客户就是分离接口 12.3 接口隔离原则(ISP) 12.4 类接口与对象接口 12.5 ATM用户界面的例子 12.6 结论 参考文献 第Ⅲ部分 薪水支付案例研究 第十三章 COMMAND...
通过视频教学,教你使用STC——ISP这个烧录软件,帮助使用其中的有关代码工具。
面向对象 设计原则 单一职责原则--SRP 开放封闭原则--OCP Liskov替换原则--LSP 依赖倒置原则--DIP 接口隔离原则--ISP
STC_ISP 15 6.86下载工具 ISP下载,亲测可用,内涵 STC-USB 与 USB-UART driver
这个压缩文件包含了与JAVA编程相关的六大原则的实例代码。这些原则被称为SOLID原则,是Robert C. Martin等软件工程师提出的一组设计原则。...接口隔离原则(Interface Segregation Principle,ISP):不应该强迫一个
java 设计模式与Jar库 里氏代换原则LSP 依赖倒转原则DIP 接口隔离原则ISP 合成/聚合复用原则CARP
1、“开-闭”原则(Open-Closed Principle,OCP...4、接口隔离原则(Interface Separate Principle,ISP) 5、合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP) 6、迪米特法则(Law of Demeter,LoD)
并且现在很多电脑已经没有并口和串口了,以前使用并口和串口的ISP下载线已经无法再继续使用了,所以自己制作一个USB下载线已经刻不容缓”。本人这学期刚刚接触单片机,就因电脑没有并口而不得不自做一个,USB的下载...
四、 接口隔离原则(ISP) 20 五、 合成/聚合复用原则(CARP) 21 六、 迪米特法则(LoD) 22 C#设计模式(4)-Simple Factory Pattern 24 一、 简单工厂(Simple Factory)模式 24 二、 Simple Factory模式角色与...
LISKOV替换原则 第11章 DIP:依赖倒置原则 第12章 ISP:接口隔离原则 第13章 写给C#程序员的UML概述 第14章 使用UML 第15章 状态图 第16章 对象图 第17章 用例 第18章 顺序图 第19章 类图 第20章 咖啡的启示 第三...