美文网首页
设计原则学习笔记

设计原则学习笔记

作者: 回调的幸福时光 | 来源:发表于2019-06-12 20:13 被阅读0次
    常用设计原则

    不常用的:里式置换原则、依赖倒置原则、接口独立原则。

    一、单一职责 (SRP)

    单一职责原则的职责被定义为“引起变化的原因”。

    原则体现为:一个对象(方法)只做一件事情。

    应用举例

    代理模式、迭代器模式、单例模式、装饰者模式

    何时应该分离职责
    • 如果两个职责总是同时变化,那就不必分离。
    • 在方便性和稳定性之间要有一些取舍。
    优缺点

    优点:
    降低了单个类或者对象的复杂度,有利于代码复用。

    缺点:

    • 增加编写代码的复杂度
    • 颗粒之间相互联系的难度

    二、最少知识原则 (LKP)

    最少知识原则:一个软件实体应当尽可能少地与其他实体发生相互作用。

    原则体现为:尽量减少对象之间的联系。

    应用举例
    • 中介者模式、外观模式
    • 封装
    优缺点

    优点:减少了对象之间的依赖
    缺点: 可能增加一些庞大到难以维护的第三者对象。

    三、开放-封闭原则 (OCP)

    定义:软件实体应该是可以扩展的,但是不可修改。

    找出变化的地方,把变化封装起来,可以把系统中稳定不变的部分和容易变化的部分隔离开。

    应用举例

    装饰者模式、发布-订阅模式、模板方法模式、策略模式、代理模式、职责链模式

    相对性
    • 找出最容易发生变化的地方,然后构造抽象来封闭这些变化。
    • 在不可避免发生修改的时候,尽量修改那些相对容易修改的地方。

    相关文章

      网友评论

          本文标题:设计原则学习笔记

          本文链接:https://www.haomeiwen.com/subject/ojutfctx.html