设计模式之禅之六大设计原则-开闭原则

  1. 云栖社区>
  2. 博客>
  3. 正文

设计模式之禅之六大设计原则-开闭原则

无信不立 2015-12-24 18:52:00 浏览513
展开阅读全文

开闭原则

一:开闭原则的定义
        --->一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。
        --->我们做一件事情,或者选择一个方向,一般需要经历三个步骤:What——是什么,Why——为什么,How——怎么做(简称3W原则,How取最后一个w)
        --->对于开闭原则,我们也采用这三步来分析,即什么是开闭原则,为什么要使用开闭原则,怎么使用开闭原则?


二:如何使用开闭原则
        --->抽象约束。
                (1)定义接口,如果业务有变化,则重写类中的方法,不修改原有代码。就是对扩展开放,对修改关闭。
               
        --->元数据(metadata)控制模块行为
                (1)编程是一个很苦很累的活,那怎么才能减轻我们的压力呢?答案是尽量使用元数据来控制程序的行为,减少重复开发。什么是元数据?用来描述环境和数据的数据,通俗地说就是配置参数,参数可以从文件中获得,也可以从数据库中获得。


        ----->制定项目章程
                (1)制定规范,统一风格编程
        ----->封装变化
                (1)对变化的封装包含两层含义:第一,将相同的变化封装到一个接口或抽象类中。第二:将不同的变化封装到不同的接口或抽象类中,不应该有两个不同的变化出现在同一个接口或抽象类中。


三:最佳实践
        ---->软件设计最大的难题就是应对需求的变化,但是纷繁复杂的需求变化又是不可预料的。则6大设计原则以及23个设计模式来“封装”未来的变化。
        
        ---->开闭原则也只是一个原则。
                (1)开闭原则只是精神口号,实现拥抱变化的方法非常多,并不局限这6大设计原则,但是遵循6大设计原则基本可以应对大多数变化。
                (2)开闭原则,是其他五大原则的宗旨。其他五大原则,是开闭原则的具体实现
        













































网友评论

登录后评论
0/500
评论
无信不立
+ 关注