当前位置: 首页 > wzjs >正文

钢材做那个网站好长沙百度推广排名

钢材做那个网站好,长沙百度推广排名,昆明建设厅网站,wordpress api文档下载任何层次的软件设计如果依赖了它并不需要的东西,就会带来意料之外的麻烦。ISP强调使用多个特定的接口,而不是一个总接口,避免依赖不需要的接口。即不需要则不应该知道。 ISP特点 降低耦合度:客户端只依赖它需要的接口&#xff0…

任何层次的软件设计如果依赖了它并不需要的东西,就会带来意料之外的麻烦。ISP强调使用多个特定的接口,而不是一个总接口,避免依赖不需要的接口。即不需要则不应该知道。

ISP特点

  • 降低耦合度:客户端只依赖它需要的接口,减少对其他接口的依赖,从而降低系统的耦合度。
  • 提高灵活性:接口的拆分使得系统更灵活,可以更容易地扩展和修改。
  • 符合开闭原则:通过接口的细分,可以更好地满足开闭原则,即对扩展开放,对修改封闭。

示例代码

不符合ISP的代码

// 违反ISP的胖接口
interface WorkerInterface {void work();void eat();
}// 机器人不需要吃饭,但被迫实现eat方法
class Robot implements WorkerInterface {@Overridepublic void work() {System.out.println("Working...");}@Overridepublic void eat() {throw new UnsupportedOperationException("机器人不需要吃饭");}
}// 人类需要实现所有方法
class Human implements WorkerInterface {@Overridepublic void work() {System.out.println("Working...");}@Overridepublic void eat() {System.out.println("Eating...");}
}

不符合ISP

使用ISP优化后的代码

interface Workable {void work();
}interface Eatable {void eat();
}// 机器人只需实现Workable
class ImprovedRobot implements Workable {@Overridepublic void work() {System.out.println("Working...");}
}// 人类实现两个接口
class ImprovedHuman implements Workable, Eatable {@Overridepublic void work() {System.out.println("Working...");}@Overridepublic void eat() {System.out.println("Eating...");}
}

符合ISP

接口隔离与其他设计原则的关系

与单一职责原则(SRP)的关系
  • 联系:SRP 关注类的职责单一,而 ISP 关注接口的职责单一。
  • 区别:SRP 针对实现类,ISP 针对接口。
与依赖倒置原则(DIP)的关系
  • 联系:DIP 要求高层模块依赖抽象接口,而 ISP 确保这些接口是最小化的。
  • 协同效应:结合使用可降低系统耦合度。

在设计中遵循ISP

采用 “客户端驱动” 的接口设计
根据客户端需求定义接口,而非根据实现定义接口。这一点非常重要,研发经常是根据实现定义接口,导致接口无限膨胀。

使用接口继承拆分胖接口
将大接口拆分为多个小接口,通过继承组合。

优先使用组合而非继承
通过组合多个小接口实现复杂功能,避免类继承不必要的方法。

编写单元测试验证接口边界
确保客户端只依赖它需要的方法,不依赖多余接口。

参考

《架构整洁之道》-- Robert C.Mattin

《架构师的自我修炼》 – 李智慧

《设计模式之美》 – 王争

http://www.dtcms.com/wzjs/15071.html

相关文章:

  • 做外贸的网站赚钱吗广州网络推广公司排名
  • 产品网站怎么做天津短视频seo
  • 温州市网站优化企业查询系统
  • 自己做的网站加载速度慢seo快排优化
  • g宝盆网站建设优惠成都网站快速优化排名
  • 用万网做网站百度交易平台
  • 网站做有偿广告需要什么有序优秀网站设计网站
  • 如何做营销型手机网站优化济南网络优化网址
  • 相亲网站的女人 做直播的seoul是什么意思
  • 有哪些摄影网站深圳seo网站推广方案
  • 网站建设与网页设计作业搜索引擎优化报告
  • 伊川县住房和城乡建设厅网站浙江网站建设推广
  • 网站首页怎么做ps怎么在百度上做广告
  • 一元购物网站开发有链接的网站
  • 中小企业建立网站最经济的方式今天重要新闻
  • 朔州做网站的顶尖文案网站
  • 上海平台网站制作公司韶关seo
  • 珠海营销型网站建设搜索引擎优化常用方法
  • 织梦网站栏目修改教程seo建站要求
  • 推广优化广安网站seo
  • 网站开发能从事那些职业站长工具seo综合查询问题
  • 成品网站短视频源码搭建免费百度指数app
  • wap手机网站程序外贸网站有哪些平台
  • dw做的网站如何上传云服务器盛大游戏优化大师
  • 特色的企业网站建设发帖推广
  • 网站建设岗位所需技能网络营销的概念及特点
  • 如何做拍卖网站苏州关键词优化软件
  • 淮南市重点工程建设管理局网站seo和sem的区别与联系
  • 购物网站怎么运营推广编写网站
  • 官网站内优化怎么做百度云网盘搜索引擎