全部博文(1293)
分类: C#/.net
2013-01-16 09:42:24
开放-封闭原则,是说软件实体(类、模块、函数等等)应该可以扩展,但是不可以修改。
该原则有两个特性:
1、对于扩展是开放的(open for extension)。
2、对于更改是封闭的(closed for modification)。
在做任何系统的时候,都 不要指望 系统一开始时需求确定,就再也不会变化,这是不现实也不科学的想法。而既然需求是一定会变化的,那么如何在面对需要的变化时,设计的软件可以相对容易修改,不至于新需求来时,就要把整个程序推倒重来。怎样的设计才能面对需求的改变却可以保持相对稳定,从而使得系统可以在第一个版本以后不断推出新的版本?就需要用到开放-封闭。
面对需求,对程序的发动是通过增加新代码进行,而不是更改现有的代码。这是开放-封闭原则的精神所在。