在软件设计模式证这种不能修改,但可以扩展的思想也是最重要的设计原则,他就是开放-封闭原则 (ocp)
对于程序设计而言,怎么的设计才能面对需求的改变却可以保持相对的稳定,
在软件设计模式证这种不能修改,但可以扩展的思想也是最重要的设计原则,他就是开放-封闭原则 (ocp)
对于程序设计而言,怎么的设计才能面对需求的改变却可以保持相对的稳定,从而可以使得系统可以再第一个版本的基础上不断的推出新版本呢?
答案是在程序设计的时候使用开放封闭原则。
但是设计的同时,绝对对修改的关闭是不可能的,无论模块是多么的封闭,都存在一些无法对之封闭的变化,既然不可以完全的封闭,设计人员必须对他设计的模块应该对哪种变换的封闭做出选择,他必须猜测出最有可能发生变换的种类,然后构造抽象来隔离那些变化。
再我们最初写代码的时候,假设变化不会发生,当变化发生时我们就构造抽象类来隔离变化。
当然,不是在什么情况下应对变化都是容易的,我们希望在开发工作展开不久就知道可能发生的变化,查处可能发生变化所等待的时间越长,要创建正确的抽象就越困难。
开放封闭原则是面向对象的核心所在,遵循这个原则可以带来面向对象所谓的巨大好处,也就是可维护,可扩展,可复用,灵活性好。然而,对于应用程序中的每个部分都刻意的抽象同样不是一个i好主意,拒绝不成熟的抽象和抽象一样重要。
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
相关文章:
-
-
详细了解C# 枚举与位枚举
一、枚举的概念: c# 枚举(enum), 枚举类型是用于声明一组命名的常数的基本数据类型(值类型);二、枚举的定义: 声明enum变量:enum <...
[阅读全文]
-
深入了解c# 匿名类型
一、什么叫做匿名类? 匿名类就是没有名字的类。匿名类不能被引用,只能再创建的时候用new语句来声明。二、匿名类的优势以及应用场景; 1、匿名类型提供了一种方...
[阅读全文]
-
-
C# 实现俄罗斯方块(附源码)
概述俄罗斯方块(tetris)是一款由俄罗斯人阿列克谢·帕基特诺夫发明的休闲游戏,帕基特诺夫爱玩拼图,从拼图游戏里得到灵感,设计出了俄罗斯方块。由于上手简单、老...
[阅读全文]
-
浅析c# 接口
接口:是指定一组函数成员而不是实现他们的引用类型。所以只能类喝啊结构来实现接口,在结成该接口的类里面必须要实现接口的所有方法接口的特点:继承于接口的类,必须要实...
[阅读全文]
-
c# 接口使用实例
用接口实现一个简单的物件的入库,出库如定义一个物流类接口,包含物件所属快递公司名称属性,物件单号属性及信息显示方法。通过物件出库类信息和物件入库类信息继承该接口...
[阅读全文]
-
-
-
-
-
网友评论