美文网首页
开闭原则

开闭原则

作者: 简石榴 | 来源:发表于2018-12-05 18:34 被阅读0次

    开闭原则的定义:
    SoftWare entities like classes,modules and functions should be open for extension but closed for modifications.(软件实体中 类、模块、函数应该对扩展开放对修改关闭)

    需求上的变化可以归纳为以下三种类型:
    逻辑变化:
    只变化处理逻辑,处理的相关算法
    子模块变化:
    一个模块变化,会对其他的模块产生影响,这种变化也一定会引起相关高层模块的变化
    可见视图变化:
    使用界面的一些变化,如数据展示列 要增加一列。类似之前项目中的行为打分展示页

    什么是开闭原则:
    开闭原则表述 应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化。
    软件实体包含:项目(产品中按照一定的逻辑规则划分的模块)、抽象和类、方法

    为什么要使用开闭原则:
    他们说存在即合理,他们说开闭原则是其他几个原则的精神领袖
    当然对于进行的单元测试会产生一些影响,如果不遵循开闭原则进行直接的修改,相应的单元测试类也要做相关修改。
    遵循开闭原则可以提高复用性
    开闭原则可以提高可维护性

    怎么使用开闭原则:
    首先它是一个特别虚的原则,要用到实际中去需要遵循:
    1、抽象约束
    ① 通过接口或抽象类约束扩展,对扩展的边界进行相关的界定
    ② 参数类型、引用对象尽量使用接口或抽象类而不是实现类
    ③ 抽象层尽量保持稳定,一但确定不允许修改
    实现对扩展开放的前提条件就是抽象约束
    2、配置文件控制模块行为
    3、制定详细项目流程,遵守契约
    4、封装变化
    ①将相同的变化封装到一个接口或抽象类中
    ②将不同的变化封装到不同的接口或抽象类中,不应该有两个不同的变化出现在同一个接口或者抽象类中(找出可以预见的变化)

    最佳实践:
    1、开闭原则也是一个原则(不要痴迷)
    2、项目开发规范很重要,在多人协作时体现
    3、预见变化

    相关文章

      网友评论

          本文标题:开闭原则

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