首页 > 其他分享 >9.1 软件设计模式

9.1 软件设计模式

时间:2022-09-01 19:13:41浏览次数:106  
标签:原则 软件设计 代换 模式 开闭 Principle 里氏 设计模式 9.1

 

设计模式的定义:设计模式,即Design Patterns,是指在软件设计中,被反复使用的一种代码设计经验。

基本要素:模式名称,问题,效果

cof设计模式的简介:

 

 

设计模式的六大原则

1、开闭原则(Open Close Principle)

开闭原则的意思是:对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。

2、里氏代换原则(Liskov Substitution Principle)

里氏代换原则是面向对象设计的基本原则之一。 里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。LSP 是继承复用的基石,只有当派生类可以替换掉基类,且软件单位的功能不受到影响时,基类才能真正被复用,而派生类也能够在基类的基础上增加新的行为。里氏代换原则是对开闭原则的补充。实现开闭原则的关键步骤就是抽象化,而基类与子类的继承关系就是抽象化的具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。

3、依赖倒转原则(Dependence Inversion Principle)

这个原则是开闭原则的基础,具体内容:针对接口编程,依赖于抽象而不依赖于具体。

4、接口隔离原则(Interface Segregation Principle)

这个原则的意思是:使用多个隔离的接口,比使用单个接口要好。它还有另外一个意思是:降低类之间的耦合度。由此可见,其实设计模式就是从大型软件架构出发、便于升级和维护的软件设计思想,它强调降低依赖,降低耦合。

5、迪米特法则,又称最少知道原则(Demeter Principle)

最少知道原则是指:一个实体应当尽量少地与其他实体之间发生相互作用,使得系统功能模块相对独立。

6、合成复用原则(Composite Reuse Principle)

合成复用原则是指:尽量使用合成/聚合的方式,而不是使用继承。

 

面向对象的七大设计原则

开闭原则、里氏代换原则、迪米特原则(最少知道原则)、单一职责原则、接口分隔原则、依赖倒置原则、组合/聚合复用原则。

 

标签:原则,软件设计,代换,模式,开闭,Principle,里氏,设计模式,9.1
From: https://www.cnblogs.com/diandianzai/p/16647553.html

相关文章

  • 最近的一些 CF 题(9.1起)
    1.CF623BB.ArrayGCD先考虑没有操作2的情况,由于不允许全删,所以至少会留下\(a_1\)与\(a_n\)中的一个,那么它们的质因数中必有一个需要成为公因数,由于最大公因数......
  • HDLBits(5) 9.1
    2Verilog语言2.2向量2.3.6加法器1实例化一个由两个16位加法器组合成的32位加法器moduletop_module(input[31:0]a,input[31:0]b,output[31:0]......
  • MQ系列5:RocketMQ消息的发送模式
    MQ系列1:消息中间件执行原理MQ系列2:消息中间件的技术选型MQ系列3:RocketMQ架构分析MQ系列4:NameServer原理解析在之前的篇章中,我们学习了RocketMQ的原理,以及RocketMQ中......
  • 设计模式之(6)——建造者模式
    定义:建造者模式也称为生成器模式,将一个个简单对象一步步构造成一个复杂的对象,将复杂对象的构建和它的表示分离,使得同样的构建过程有不同的表示;主要解决:系统中复杂......
  • 单例模式模板
    #include<bits/stdc++.h>usingnamespacestd;template<typenameT>classSingleton{public:staticT*instance(){staticT*instance=new......
  • 设计模式之单例模式(Python实现)
    先认识下什么是单例模式,可以参考前人的优秀分析https://blog.csdn.net/lovelion/article/details/9319181总结起来说,当我们在代码中频繁的创建和删除对象时会消耗大量资源......
  • 初识设计模式 - 建造者模式
    简介概念建造者设计模式(BuilderDesignPattern)又叫作生成器模式,是一种对象构建模式,其核心在于将产品和产品建造过程解耦。建设者模式允许用户只通过指定复杂对象的类型......
  • 设计模式 引子
       设计模式的世界丰富多彩,比如生产一个个“产品”的工厂模式,衔接两个不相关接口的适配器模式,用不同的方式做同一件事情的策略模式,构建步骤稳定,根据不同配置构造稳定......
  • 设计模式之(5)——原型模式
    上篇文章中我们提到单例模式可以避免重复创建消耗资源的对象,但是却不得不共用对象。若是对象本身也不让随意访问修改时,怎么办?那么我们就可以采用原型模式来创建新的实......
  • C++ 简单设计模式之简单工厂
    一、简单工厂一个工厂类能够根据传入参数而决定创建出哪一种产品类的实例二、类设计//手机classPhone{public: virtualvoidmodel()=0;};//华为手机clas......