当前位置: 首页 > article >正文

C++,设计模式,【目录篇】

在这里插入图片描述

文章目录

  • 1. 简介
  • 2. 设计模式的分类
    • 2.1 创建型模式(Creational Patterns):
    • 2.2 结构型模式(Structural Patterns):
    • 2.3 行为型模式(Behavioral Patterns):
  • 3. 使用设计模式的好处
  • 参考


1. 简介

设计模式(Design Patterns)是软件工程中针对常见问题的可重用解决方案。它们不是具体的代码,而是经过验证的最佳实践,用于解决特定场景下的设计问题。设计模式最早由 Erich Gamma 等人在《设计模式:可复用面向对象软件的基础》一书中提出,共包含 23 种经典模式。


2. 设计模式的分类

2.1 创建型模式(Creational Patterns):

解决对象创建的问题,隐藏创建逻辑。
包括:
C++,设计模式,【单例模式】
C++,设计模式,【工厂方法模式】
C++,设计模式,【抽象工厂模式】
C++,设计模式,【建造者模式】
C++,设计模式,【原型模式】


2.2 结构型模式(Structural Patterns):

解决类和对象的组合问题,形成更大的结构。
包括:
C++,设计模式,【适配器模式】
C++,设计模式,【代理模式】
C++,设计模式,【装饰器模式】
C++,设计模式,【外观模式】
C++,设计模式,【桥接模式】
C++,设计模式,【组合模式】
C++,设计模式,【享元模式】
C++,设计模式,【观察者模式】


2.3 行为型模式(Behavioral Patterns):

解决对象之间的职责分配和通信问题。
包括:
C++,设计模式,【备忘录模式】
C++,设计模式,【模板方法式】
C++,设计模式,【迭代器模式】
C++,设计模式,【状态模式】
C++,设计模式,【责任链模式】
C++,设计模式,【解释器模式】
C++,设计模式,【访问者模式】


3. 使用设计模式的好处

  1. 提高代码的可重用性:

    • 设计模式提供了经过验证的解决方案,可以直接应用于类似问题,减少重复代码。
  2. 提高代码的可维护性:

    • 设计模式使代码结构清晰,易于理解和修改。
  3. 提高代码的扩展性:

    • 设计模式通常遵循开闭原则(对扩展开放,对修改关闭),使系统更容易扩展。
  4. 提高代码的灵活性:

    • 设计模式通过解耦和抽象,使代码更灵活,适应需求变化。
  5. 提高团队协作效率:

    • 设计模式是通用的设计语言,团队成员可以快速理解代码的设计意图。
  6. 降低代码的复杂度:

    • 设计模式通过抽象和封装,将复杂问题分解为简单模块。

参考

【1】大话设计模式
【2】大丙课堂
【3】菜鸟编程,设计模式
【4】Boolan首席软件专家李建忠《C++设计模式》课程
【5】设计模式,我悟了!
【6】卡码网设计模式精讲
【7】卡码网设计模式专题
【8】C++设计模式


http://www.kler.cn/a/510779.html

相关文章:

  • 【王树森搜素引擎技术】相关性03:文本匹配(TF-IDF、BM25、词距)
  • 【C++】如何从源代码编译红色警戒2地图编辑器
  • 周末总结(2024/01/18)
  • OpenVela——专为AIoT领域打造的开源操作系统
  • 2024年度个人成长与技术洞察总结
  • K8S开启/关闭审计日志
  • 【C++课程学习】:C++中的IO流(istream,iostream,fstream,sstream)
  • Jenkinsfile共享库介绍
  • Apache Hive--排序函数解析
  • Vue uni-app免手动import
  • Android系统开发(十五):从 60Hz 到 120Hz,多刷新率进化简史
  • Spring Boot 集成 MongoDB:启动即注入的便捷实践
  • JAVA-Exploit编写(6)--http-request库文件上传使用
  • 人机交互(包含推荐软件)
  • STM32 中 GPIO 的八种工作模式介绍
  • 第5章:Python TDD定义Dollar对象相等性
  • pnpm安装
  • AUTOSAR从入门到精通-【自动驾驶】高精地图(五)
  • 接口测试自动化实战(超详细的)
  • 若依框架搭建学习
  • Electron实践继续
  • 使用 Helm 安装 Redis 集群
  • 自制游戏——国争
  • JavaScript系列(33)--微前端架构详解
  • C语言之装甲车库车辆动态监控辅助记录系统
  • 第一次在Gitee建仓传码