《大话设计模式》——原则:开放-封闭原则
2016-02-24 11:28
239 查看
开放-封闭原则:软件实体(类、模块、函数等)应该可以扩展,但是不能修改。
两个特征:对于扩展是开放的,对于修改是封闭的。
如何设计才能面对需求的改变却可以保持相对稳定,从而使得系统可以在第一个版本后不断推出新的版本呢?
怎么做?
开放-封闭原则的意思是:在设计软件时,尽量让这个类做到足够好,写完了就不要再修改了。当需求发生变化时,在增加一些新的类来完成,已有的类能不动则不动。
当然,绝对的封闭是不可能的。设计人员必须对他设计的模块应该封闭那些变化做出选择。必须先猜出最有可能发生变化的种类,然后构造抽象来隔离变化。
在系统发生微小变化时,就及早去想办法应对发生更大变化的可能。创建抽象来隔离以后发生同类的变化。
目的:面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。
开放-封闭原则可以使项目更加可维护、可扩展。可复用、灵活性好。开阀人员应该仅对程序中呈现出频繁变化的那些部分作出抽象。然而,对于应用程序中的每个部分都刻意抽象也不好。拒绝不成熟的抽象和抽象本身一样重要。
两个特征:对于扩展是开放的,对于修改是封闭的。
如何设计才能面对需求的改变却可以保持相对稳定,从而使得系统可以在第一个版本后不断推出新的版本呢?
怎么做?
开放-封闭原则的意思是:在设计软件时,尽量让这个类做到足够好,写完了就不要再修改了。当需求发生变化时,在增加一些新的类来完成,已有的类能不动则不动。
当然,绝对的封闭是不可能的。设计人员必须对他设计的模块应该封闭那些变化做出选择。必须先猜出最有可能发生变化的种类,然后构造抽象来隔离变化。
在系统发生微小变化时,就及早去想办法应对发生更大变化的可能。创建抽象来隔离以后发生同类的变化。
目的:面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。
开放-封闭原则可以使项目更加可维护、可扩展。可复用、灵活性好。开阀人员应该仅对程序中呈现出频繁变化的那些部分作出抽象。然而,对于应用程序中的每个部分都刻意抽象也不好。拒绝不成熟的抽象和抽象本身一样重要。
相关文章推荐
- Spring对Hibernate事务管理
- C++学习笔记:3.4多继承
- NodeJS常用
- 韩都衣舍的综合评价全面回升了
- 太神奇了今天交了300话费还欠50,…
- 今天生气把小孩的玩具踩碎了,有点…
- 如何品尝百度优化这盘大菜
- 做好淘宝客单页面的几个技巧和方法
- 如何根据来路做页面跳转
- 如何利用分类信息网让你的网站流量…
- SEO关键词策略——新站如何抗衡老站…
- 唐僧给孙悟空的信【挺有意思的】
- 浅谈百度权重的计算漏洞及快速提升…
- 从百度百科的一个页面来看SEO是什…
- 微笑中的母亲-给妈妈一个问候节日…
- 淘宝客推广流程
- iframe实现Ajax文件上传效果示例
- 理解Android系统的进程间通信原理(二)----RPC机制
- Opencv— — Pinch Filter
- 深拷贝和浅拷贝