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

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

开闭原则

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


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


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


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













































相关文章
|
设计模式 关系型数据库
【设计模式——学习笔记】设计模式简介+七大设计原则介绍(下)
【设计模式——学习笔记】设计模式简介+七大设计原则介绍
128 0
|
3月前
|
设计模式 Java 测试技术
Java设计模式-UML与设计原则(1)
Java设计模式-UML与设计原则(1)
|
4月前
|
设计模式 前端开发 JavaScript
React开发设计模式及原则概念问题之什么是HOC(Higher-order component),HOC遵循的设计原则都有哪些
React开发设计模式及原则概念问题之什么是HOC(Higher-order component),HOC遵循的设计原则都有哪些
|
5月前
|
设计模式 算法
交易链路设计原则&模式问题之中介者(Mediator)方法设计模式是什么,如何解决
交易链路设计原则&模式问题之中介者(Mediator)方法设计模式是什么,如何解决
|
7月前
|
设计模式 算法 Java
【设计模式系列笔记】设计模式与设计原则
设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 设计原则是一些通用的设计指导方针,它们提供了如何设计一个优秀的软件系统的基本思想和规则。指导着设计者如何组织代码以实现高内聚、低耦合、易扩展和易维护的软件系统。
90 4
|
7月前
|
设计模式 Java 数据安全/隐私保护
设计模式之六大设计原则
设计模式之六大设计原则
76 0
|
7月前
|
设计模式 关系型数据库
【设计模式】软件设置原则-开闭原则
【1月更文挑战第12天】【设计模式】软件设置原则-开闭原则
|
7月前
|
设计模式 关系型数据库 程序员
【设计模式】设计原则
【1月更文挑战第12天】【设计模式】设计原则
|
7月前
|
设计模式 安全 Java
Java设计模式七大原则之开闭原则
Java设计模式七大原则之开闭原则
86 0
|
设计模式 程序员
设计模式-设计原则
设计模式-设计原则