前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件架构设计原则--接口隔离原则

软件架构设计原则--接口隔离原则

作者头像
向着百万年薪努力的小赵
发布2022-12-02 10:20:20
2340
发布2022-12-02 10:20:20
举报
文章被收录于专栏:小赵的Java学习

本专栏内容参考自:咕泡学院Tom老师的《Spring5核心原理与30个类手写实战》,仅作个人学习记录使用,如有侵权,联系速删

  接口隔离原则(Interface isolation principle,ISP)是指用多个专门的接口,而不是用单一的总接口,客户端不应该依赖它不需要的接口。   这个原则知道我们在设计接口时应当注意以下几点:

  1. 一个类对另一个类的依赖应当建立在最小的接口上。
  2. 建立单一的接口,不要建立庞大臃肿的接口。
  3. 尽量细化解耦,接口中的方法尽量少(不是越少越好)

  接口隔离原则符合我们常说的高内聚、低耦合的设计思想,可以使类具有很好的可读性、可扩展性和可维护性。我们在设计接口的时候,要多花时间去思考,要考虑业务模型,包括对哟吼可能发生变更的地方还要做一些预判。   所以,对于抽象、对于业务模型的理解是非常中重要的。

比如现在有个动物接口:

代码语言:javascript
复制
public interface IAnimal {
    void eat();
    void fly();
    void swim();
}

提供了吃、飞、游泳三个方法。 现在有一个Dog实现了它,显然狗是不能飞的,那么里面的fly方法是不是就空着了。 那么这就不符合接口隔离原则了,怎么改进呢? 把三种行为拆分为三个接口,让每个动物实现他们各自需要的就行了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档