人工精选【夏曹俊】C++设计模式理论与实战大全-架构师必学课程
如果你写过几年 C++,代码能跑、功能能交,但一遇到需求改动就要大范围返工,或者接手别人的项目时发现类与类之间缠得理不清,这门课针对的就是这个阶段的问题。它讲的不是语法,而是怎么把代码结构安排得让改动可控。 它解决的是"代码能跑但不好改"的问题 课程从 UML 和设计模式导论起步,先建立一套描述类之
会员可免费下载本篇月会员、年会员、永久会员可免费领取。
开通会员 ›会员 · 按档位
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
如果你写过几年 C++,代码能跑、功能能交,但一遇到需求改动就要大范围返工,或者接手别人的项目时发现类与类之间缠得理不清,这门课针对的就是这个阶段的问题。它讲的不是语法,而是怎么把代码结构安排得让改动可控。
它解决的是"代码能跑但不好改"的问题
课程从 UML 和设计模式导论起步,先建立一套描述类之间关系的语言,再逐个展开具体模式。重点落在两件事上:一是理解每种模式要应对的变化点在哪里,二是用 C++ 把它写出来。比如简单工厂部分,除了定义和场景,还讲了对象动态创建与配置化开发这类工程做法;单例部分则把懒汉、饿汉以及多线程环境下的写法放在一起对比。这些内容对应的是实际工作里常见的判断:什么时候该引入一层间接,什么时候是过度设计。学完之后,你看待一段代码的角度会从"能不能实现"转向"以后改起来会怎样"。
适合什么基础,先看哪几块
前提是你能独立写 C++ 类,理解继承、虚函数和多态,用过指针或引用做对象传递。如果这些还不熟,先补语言本身再来,否则模式会变成背概念。建议的推进顺序是:先看导论部分把 UML 类图和面向对象原则过一遍,这是后面所有内容的地基;然后按创建型、结构型、行为型的顺序走,不要跳着看,因为后面的模式经常复用前面的思路。每个模式先看定义和场景,再看实现,最后看工程技巧那一节——那部分往往是课程里最贴近真实项目的。
学完能做什么,资料怎么用
比较现实的目标是:拿到一个中等规模的功能模块,你能判断出哪些地方该抽接口、哪些对象该控制创建过程、哪些依赖该反转,并且能用 C++ 写出结构清晰的实现,而不是把所有逻辑堆在几个大类里。课程末尾涉及 MVC 这类综合模式,可以当作检验,看自己能否把前面零散的模式组合成一个完整结构。
练习上不建议只看不写。每学完一个模式,回到自己手头的项目或以前写过的代码里找一个可以改造的地方,动手重构一次,再对比改造前后的差异。UML 部分可以配合手绘类图,把模式里的角色关系画出来,比单纯记忆定义有效得多。如果时间有限,优先保证导论、工厂与单例、以及面向对象原则总结这几块吃透,它们覆盖了后续大部分内容的底层逻辑。
课程目录
课程目录87 集
- 课程介绍 本页收录 [C++]【夏曹俊】C++设计模式理论与实战大全-架构师必学课程,方向为后端开发 / itjc8,重点涉及 C++、架构。 内容涵盖:01 课程介绍、02 UML和设计模式导论、01 简单工厂方法的定义场景与实现、针对接口编程的设计思想剖析、
- 22 面向对象 OO 的设计原则 总结、
- 02 MVC模式讲解 1 等主题。 适合正在补 C++、架构 相关知识、想按目录逐步推进的学习者。 下方为完整资料与目录,可先看目录判断是否符合需要。 1-01、课程介绍.mp4
- 1-02、UML和设计模式导论.mp4
- 2-01、简单工厂方法的定义场景与实现-针对接口编程的设计思想剖析.mp4
- 2-02、简单工厂实用工程技术:C++对象动态创建技术与配置化开发.mp4
- 2-03、单例模式的定义场景与实现:懒汉、饿汉与多线程安全double.mp4
- 2-04、单例模式的实用工程技术——从单例到多例,应用系统缓存的实现原.mp4
- 2-05、工厂模式的定义场景与实现——子类延迟实现父类功能的软件结构.mp4
- 2-06、工厂模式的实用工程技术——IOC容器与工厂模式的应用.mp4
- 2-07、抽象工厂的定义、场景与实现——相互关联关系的对象.mp4
- 2-08、抽象工厂的实用工程技术——抽象工厂的使用场景.mp4
- 2-09、构建者模式Builder的定义、场景与实现.mp4
- 2-10、构建者模式的实用工程技术——代码的坏味道:算法与对象构建的隔.mp4
- 2-11、原型模式的定义场景与实现——对象的快速复制.mp4
- 2-12、原型模式的实用工程技术——DRY原则与使用模式进行重构.mp4
- 3-01、适配器模式的定义、场景与实用工程技术:对象适配与类的适配.mp4
- 3-02、门面(外观)模式Facade的定义、场景与实用工程技术.mp4
- 3-03、享元模式Flyweight的定义场景与实现:运用共享技术.mp4
- 3-04、享元模式Flyweight的实用工程技术:文件夹图标、字符串.mp4
- 3-05、代理模式的定义场景与实现:控制对象访问与Cache代理.mp4
- 3-06、代理模式的实用工程技术——AOP面向切面编程、智能指针与代理.mp4
- 3-07、包装模式的定义、场景与实现——组合大于继承.mp4
- 3-08、包装模式的实用工程技术——MFC中CView结构设计.mp4
- 3-09、组合模式的定义、场景与实现:部分_整体.mp4
- 3-10、组合模式的实用工程技术——树形(递归)结构的面向对象实现.mp4
- 3-11、桥接模式的定义、场景与实现:一维扩展用继承,多维扩展用桥接.mp4
- 3-12、桥接模式的实用工程技术:桥接模式应用评析、MFC分析.mp4
- 4-01、模板方法的定义场景与实现:将“动作”封装成对象是理解行为型.mp4
- 4-02、模板方法的实用工程技术:好莱坞法则、钩子函数与单元测试工具.mp4
- 4-03、策略模式的定义场景与实现:isA还是hasA,里氏代换原.mp4
- 4-04、策略模式的实用工程技术——支付交易系统帐户转帐、数据信令采集.mp4
- 4-05、观察者模式的定义场景与实现——订阅_发布的软件结构.mp4
- 4-06、观察者模式的实用工程技术——出版+订阅就是观察者模式.mp4
- 4-07、命令模式的定义、场景与实现——封装调用.mp4
- 4-08、命令模式的实用工程技术——Undo撤销与宏命令.mp4
- 4-09、责任链模式的定义、场景与实现:击鼓传花.mp4
- 4-10、责任链模式的实用工程技术——事件冒泡、过滤器原理与责任链实现.mp4
- 4-11、备忘录模式的定义、场景与实现:备忘录与友元函数的应用.mp4
- 4-12、备忘录模式的实用工程技术:Session、数据库快照.mp4
- 4-13、调停者模式的定义场景与实现——封装交互与即插即用.mp4
- 4-14、调停者模式的实用工程技术——多对多关系交互解耦合.mp4
- 4-15、状态模式的定义场景与实现——从if_else中提取公因式.mp4
- 4-16、状态模式的实用工程技术—自动化流水线的状态组合与业务逻辑解耦.mp4
- 4-17、解释器模式的定义场景与实现——一个简单加减法运算器的实例.mp4
- 4-18、解释器模式的工程应用——解释器与数据结构、算法和编译原理.mp4
- 4-19、访问者模式的定义场景与实现——一个手机配置环境的构建.mp4
- 4-20、访问者模式的工程应用——工单派送、电脑组装与银行账户流程的工.mp4
- 4-21、迭代器模式方法与工程应用:STL迭代器应用与迭代器模式思想.mp4
- 4-22、面向对象(OO)的设计原则(总结).mp4
- 5-01、MVC图片编辑器项目介绍和UML知识回顾(1).mp4
- 5-02、MVC模式讲解(1).mp4
- 5-03、项目功能说明用到的设计模式说明(1).mp4
- 5-04、抽象工厂、单例、观察者、门面模式回顾和项目类图分析(1).mp4
- 5-05、依赖的QT环境安装(1).mp4
- 5-06、配置QT项目和信号槽代码示例(1).mp4
- 5-07、创建XImageEdit项目并提升QWidget控件完成类实.mp4
- 5-08、手动添加打开文件的信号槽.mp4
- 5-09、完成Qt打开并显示图片.mp4
- 5-10、完成XEditView的初始化和载入背景图的实现和调用.mp4
- 5-11、重载鼠标事件完成画笔功能.mp4
- 5-12、观察者模式代码IObserver和XSubject完成.mp4
- 5-13、观察者模式XModel和XEditView代码完成并重构.mp4
- 5-14、完成控制器、模型、视图的抽象工厂模式创建.mp4
- 5-15、将模型和视频与用户代码解耦合有门面模式的控制器来做.mp4
- 5-16、重构划线到IGraph接口并添加划线的样式(颜色、链接、抗锯.mp4
- 5-17、重构XPenGraph用模板技术在工厂中注册.mp4
- 5-18、注册了XErasGraph完成了橡皮檫功能.mp4
- 5-19、注册了XRectGraph添加了画矩形存在未清理历史图像问题.mp4
- 5-20、修正了矩形绘制的残影添加XImageGraph.mp4
- 5-21、完成了Undo和Redo代码.mp4
- 5-22、完成了画笔的粗细设置.mp4
- 5-23、完成画笔颜色设置.mp4
- 5-24、项目完成优化界面添加图标和按钮.mp4
- 09完成Qt打开并显示图片XImageEdit-01.zip
- 10完成XEditView的初始化和载入背景图的实现和调用-01.zip
- 11重载鼠标事件完成画笔功能-01.zip
- 12观察者模式代码IObserver和XSubject完成XImageEdit-01.zip
- 13观察者模式XModel和XEditView代码完成并完成代码重构XImageEdit-01.zip
- 14完成控制器、模型、视图的抽象工厂模式创建XImageEdit-01.zip
- 15将模型和视频与用户代码解耦合有门面模式的控制器来做XImageEdit-01.zip
- 16重构划线到IGraph接口并添加划线的样式(颜色、链接、抗锯齿)XImageEdit-01.zip
- 19注册了XRectGraph添加了画矩形存在未清理历史图像问题XImageEdit-01.zip
- 20修正了矩形绘制的残影添加XImageGraphXImageEdit-01.zip
- 21完成了Undo和Redo代码XImageEdit-01.zip
- 22完成了画笔的粗细设置XImageEdit-01.zip
- 24完整代码XImageEdit-01.zip
- DesignPatterns课程代码-01.zip
- 设计模式思维导图-01.zip
![[JS]蔡老板-AST入门实战与JavaScript补环境课程](/api/uploads/b61dd97b-3886-4945-87a1-bca5f13e23d6.jpg)
![[架构]Java 亿级项目架构设计与落地应用](/api/uploads/085d4f12-17c5-4a8c-a5dd-76796ac4a679.jpg)



