zoukankan      html  css  js  c++  java
  • 设计模式--开放封闭原则

    开放封闭原则

    开放-封闭原则:是说软件主题可以扩展但是不可修改。
    特点:对于扩展是开放的,对于更改是封闭的。
    在做系统是不可能做到一开始就确定了所有需求,以后不会变化的。只能在需求来临时,做尽量少的更改,不至于整个系统推翻重来。这就需要当变化来临时,我们创建抽象将相似的变化隔离出去。这样面对新的需求,就是添加新的代码,而不是更改现有的代码。
    如:实现一个简单计算器功能时,可以只在主函数中实现,当我们需要添加功能时,改动就涉及到了所有的代码,而开放--封闭原则要求对修改是封闭的。如果我们将运算方法抽象分离出去,那么我们添加新的计算方法时,只需添加相应的类,而不需改动原先的代码。这就是对于扩展是开放的,而对于更改就是封闭的。

    注意

    查明可能发生的变化等待的时间越长,要创建正确的抽象就越困难,你想想某个功能被到处应用,都是相似的代码,此时你再想将其抽象出来,考虑分离,这是很困难的。
    开放封闭原则是面向对象设计的核心所在。遵循这个原则可以带来面向对象技术所声称的巨大好处,也就是可维护,可扩展,可复用,灵活性好。开发人员应对哪些可能发生频繁变化的部分做出抽象,分离。然而程序中任何地方都进行刻意的抽象并不是一个好主意,拒绝不成熟的抽象和抽象本身一样重要。

  • 相关阅读:
    必须先将 ContentLength 字节写入请求流,然后再调用 [Begin]GetResponse。解决方法
    使用NPOI导出导入导出Excel
    使用jquery ajaxForm提交表单
    VS2013创建Windows服务
    mysql查询锁表及解锁
    selenium学习笔记(1)
    进程基本知识
    多任务原理
    数据转化之JSON
    安装Treserocr遇到的问题
  • 原文地址:https://www.cnblogs.com/tyhA-nobody/p/13191083.html
Copyright © 2011-2022 走看看