• alex
    2019-12-25
    老师能加个代码么?自动锁门那块
    
     4
  • 美美
    2020-01-03
    想起了,宝玉所说的道,术和器的概念
    感觉"道"就是面向对象的的几个特性,封装,继承和多态
    "术"就是以道为根基,为理论依据 发展而来的 各种模式, 用来解决软件开发中中的各种违背软件设计原则的方法.
    所有的变换皆是"道"而引起的,没有道,就没有术比如少了多态这个道,各种设计模式将会减少大半甚至消亡.

    作者回复: 👍

    
     2
  • niuniu
    2019-12-25
    我觉得关键是合理的定义接口的粒度,实践中不同的场景可能同时需要用到同一个类的多个接口,还是要进行强转,让调用方很不爽。
    
     1
  • 不记年
    2020-02-01
    接口隔离和单一职责是一体两面的,一个面向调用者,一个面向实现者
    
    
  • 旅途
    2020-01-29
    老师 Iterable 为什么是属于接口隔离原则这个没太理解 能再详细讲一下吗

    作者回复: 每种数据容器实现类的内部都是不同的,但是它们都可以通过Iterable遍历,Client无需关注容器类的实现就能用统一的方式遍历容器。而Iterable接口也看不到容器类的内部实现,所以是一种接口隔离。

    
    
  • 旅途
    2020-01-29
    问一下老师 最后的小结 如果使用者 调用CacheManageable这个接口的reBuild 不还是被访问到了吗

    作者回复: CacheManageable这个接口不对使用者开放,所以无法访问。

    
    
  • 任鑫
    2020-01-22
    设计一个类大致和现实中设计一个职能部门差不多,需要考虑两方面需求:
            (一)是优化资源调度、使用效率,提高效率,减少重复劳动。
            (二)是便于对外提供功能服务,使功能的使用者能够清晰明确的使用到自己所需的功能,而不必纠缠其他不必要的功能。
            为了满足第一条,软件设计上要注意代码的“高内聚”,就是将关联密切的功能放在一个类里面,以提高重用性;现实世界中,政府部门和企业内部需要将功能类似的组织合并,具体可以参照建国以来国务院下属部委的调整,当然这些调整的原因是多方面的,但其中有一些部门的合并确实考虑到了第一条,例如卫生健康委员会的设立和农业农村部的设立。
            为了满足第二条,我们国家设置了“一个单位,两块牌子”的机构,例如今年频频亮剑的“中纪委国家监委”;在软件设计上,功能的调用者不直接通过依赖实现类的方式完成功能调用,而是依赖功能清晰,调用明确的接口,而多个功能接口可以由一个功能内聚的类提供实现。
    展开

    作者回复: 🐂

    
    
  • 虢國技醬
    2020-01-21
    感觉go中的无侵入式的接口方式在这方面更显得自然和简单
    
    
  • InfoQ_e077cb303519
    2020-01-19
    接口隔离原则,一个类中有不同的业务类型的处理方法,有的场景只需要其中一种业务类型的处理方法,为了在调用时隔离其他方法,可以通过接口定义不同业务类型抽象方法,然后调用方通过该接口进行多态引用
    
    
  • QQ怪
    2019-12-30
    又加深理解了,优秀
    
    
  • Paul Shan
    2019-12-29
    接口隔离原则感觉比较简单,依赖什么就只定义需要的接口,代价是相似的接口被定义好几份,可以用接口间的继承一定程度上消除重复代码。
    
    
  • Zend
    2019-12-27
    没想过,说实话 在写代码的时候太过于赶进度,没有对代码进行重构,更没有考虑到自己的设计的这个类如果方法都集中在一起不方便同事调用,让同事产生困惑。
    
    
  • 山猫
    2019-12-25
    接口隔离原则好是好,就是写着写着就发现接口越来越多,越来越多,甚至会超过本身类的数量,而且每个接口会只使用一次,这样不如直接用外观模式的IDE自动完成了。

    我现在用接口主要用于一些模型的规范性和方法参数规范性。如果需要文章中的功能,会拆开为两个类来写,而不是用两个接口加两个类。

    不知道我这种设计是否更好一些,或者这个真的和使用场景或项目大小吧。
    展开
    
    
我们在线,来聊聊吧