原则
软件实体可以扩展,但是不可修改。即对于扩展是开放的,对于修改是封闭的。面对需求,对程序的改动是通过增加代码来完成的,而不是改动现有的代码。
方法:
面对需求变化时,我们是增加代码,而不是改变原有的代码,当需求变化发生时,我们就创建抽象来隔离以后将要发生同类的变化。
开放-封闭原则是面向对象的核心所在。开发人员应该对程序中呈现出频繁变化的那部分做出抽象,拒绝对任何部分都刻意抽象及不成熟的抽象。
软件实体可以扩展,但是不可修改。即对于扩展是开放的,对于修改是封闭的。面对需求,对程序的改动是通过增加代码来完成的,而不是改动现有的代码。
方法:
面对需求变化时,我们是增加代码,而不是改变原有的代码,当需求变化发生时,我们就创建抽象来隔离以后将要发生同类的变化。
开放-封闭原则是面向对象的核心所在。开发人员应该对程序中呈现出频繁变化的那部分做出抽象,拒绝对任何部分都刻意抽象及不成熟的抽象。