版权声明:本文为博主夏曹俊原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiedichina/article/details/83581145
C++ 设计模式原理与实战大全-架构师需备课程—716人已学习
课程介绍
C++属于难学易用的工程开发语言,C++繁复的语法往往使得开发人员过于强调细节而缺乏软件体系结构的大局观。特别需要指出的是,缺乏面向对象的软件设计能力是制约从业人员从开发者向设计者转变的重要因素。设计模式是来源于工业实践的重要开发经验,它实际上是面向对象的数据结构,掌握设计模式是掌握面向对象设计的根本要求。
课程收益
本课程从案例出发,结合工程实践场景,剖析了各类有缺陷的软件设计,针对性的描述了如何采用设计模式改进软件开发,丰富了学员实际开发经验,提升实战能力。
讲师介绍
夏曹俊 更多讲师课程
夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算机视觉,嵌入式图像处理,云安全审计项目,比赛鹰眼系统,主编出版过《C++实训教程》,并同时熟悉php,c#,java,安卓项目研发。
课程大纲
第1章:导论
1. 课程介绍 课程购买后加:726114806群下载代码 12:14
2. 导论UML和设计模式导论 23:59
第2章:创建型设计模式
1. 简单工厂方法的定义场景与实现-针对接口编程的设计思想剖析 26:28
2. 简单工厂实用工程技术:C++对象动态创建技术与配置化开发 28:31
3. 单例模式的定义场景与实现:懒汉、饿汉与多线程安全double checking 23:08
4. 单例模式的实用工程技术——从单例到多例,应用系统缓存的实现原理 22:03
5. 工厂模式的定义场景与实现——子类延迟实现父类功能的软件结构 22:50
6. 工厂模式的实用工程技术——IOC容器与工厂模式的应用 25:22
7. 抽象工厂的定义、场景与实现——相互关联关系的对象 23:30
8. 抽象工厂的实用工程技术——抽象工厂的使用场景 14:15
9. 构建者模式Builder的定义、场景与实现 35:11
10. 构建者模式的实用工程技术——代码的坏味道:算法与对象构建的隔离 24:42
11. 原型模式的定义场景与实现——对象的快速复制 21:36
12. 原型模式的实用工程技术——DRY原则与使用模式进行重构 9:20
第3章:结构型设计模式
1. 适配器模式的定义、场景与实用工程技术:对象适配与类的适配 17:12
2. 门面(外观)模式Facade的定义、场景与实用工程技术:LOD迪米特法则 17:19
3. 享元模式Flyweight的定义场景与实现:运用共享技术有效地支持大量细粒度的对象 25:20
4. 享元模式Flyweight的实用工程技术:文件夹图标、字符串、对象池资源池、数据库连接池与享元思想 7:32
5. 代理模式的定义场景与实现:控制对象访问与Cache代理 29:14
6. 代理模式的实用工程技术——AOP面向切面编程、智能指针与代理思想 43:55
7. 包装模式的定义、场景与实现——组合大于继承 19:59
8. 包装模式的实用工程技术——MFC中CView结构设计与流式文件设计思想评析 32:21
9. 组合模式的定义、场景与实现:部分/整体 33:17
10. 组合模式的实用工程技术——树形(递归)结构的面向对象实现 46:36
11. 桥接模式的定义、场景与实现:一维扩展用继承,多维扩展用桥接 12:50
12. 桥接模式的实用工程技术:桥接模式应用评析、MFC中的CArchive 8:30
第4章:行为型设计模式
1. 模板方法的定义场景与实现:将“动作”封装成对象是理解行为型模式的重要基础 15:58
2. 模板方法的实用工程技术:好莱坞法则、钩子函数与单元测试工具gtest 12:04
3. 策略模式的定义场景与实现:is A还是has A,里氏代换原则 33:19
4. 策略模式的实用工程技术——支付交易系统帐户转帐、数据信令采集中的策略模式实现原理 14:18
5. 观察者模式的定义场景与实现——订阅/发布的软件结构 42:02
6. 观察者模式的实用工程技术——出版+订阅就是观察者模式以今日头条为例 9:31
7. 命令模式的定义、场景与实现——封装调用 22:31
8. 命令模式的实用工程技术——Undo撤销与宏命令 42:25
9. 责任链模式的定义、场景与实现:击鼓传花 13:04
10. 责任链模式的实用工程技术——事件冒泡、过滤器原理与责任链实现 20:35
11. 备忘录模式的定义、场景与实现:备忘录与友元函数的应用 29:06
12. 备忘录模式的实用工程技术:httpSession、数据库快照与Cookie 8:31
13. 调停者模式的定义场景与实现——封装交互与即插即用 30:23
14. 调停者模式的实用工程技术——多对多关系交互解耦合 6:44
15. 状态模式的定义场景与实现——从if/else中提取公因式 29:08
16. 状态模式的实用工程技术——自动化流水线的状态组合与业务逻辑解耦合 6:19
17. 解释器模式的定义场景与实现——一个简单加减法运算器的实例 19:31
18. 解释器模式的工程应用——解释器与数据结构、算法和编译原理的内在关系 6:06
19. 访问者模式的定义场景与实现——一个手机配置环境的构建 19:09
20. 访问者模式的工程应用——工单派送、电脑组装与银行账户流程的工程设计解读 11:20
21. 迭代器模式方法与工程应用:STL迭代器应用与迭代器模式思想 16:49
22. 设计模式总结-OO的设计原则 14:15
第5章:项目实战
1. MVC图片编辑器项目介绍和UML知识回顾 8:28
2. MVC模式讲解 5:16
3. 项目功能说明用到的设计模式说明 9:32
4. 抽象工厂、单例、观察者、门面模式回顾和项目类图分析 13:16
5. 依赖的QT环境安装 11:03
6. 配置QT项目和信号槽代码示例 10:21
7. 创建XImageEdit项目并提升QWidget控件完成类实现 7:51
8. 手动添加打开文件的信号槽 7:33
9. 完成Qt打开并显示图片 10:20
10. 完成XEditView的初始化和载入背景图的实现和调用 11:34
11. 重载鼠标事件完成画笔功能 10:59
12. 观察者模式代码IObserver和XSubject完成 9:16
13. 观察者模式XModel和XEditView代码完成并完成代码重构 16:55
14. 完成控制器、模型、视图的抽象工厂模式创建 16:29
15. 将模型和视频与用户代码解耦合有门面模式的控制器来做 15:21
16. 重构划线到IGraph接口并添加划线的样式(颜色、链接、抗锯齿) 23:12
17. 重构XPenGraph用模板技术在工厂中注册 11:45
18. 注册了XErasGraph完成了橡皮檫功能 11:55
19. 注册了XRectGraph添加了画矩形存在未清理历史图像问题 11:34
20. 修正了矩形绘制的残影添加XImageGraph 18:30
21. 完成了Undo和Redo代码 11:37
22. 完成了画笔的粗细设置 12:39
23. 完成画笔颜色设置 12:32
24. 项目完成优化界面添加图标和按钮 9:24
大家可以点击【 查看详情】查看我的课程
课程介绍
C++属于难学易用的工程开发语言,C++繁复的语法往往使得开发人员过于强调细节而缺乏软件体系结构的大局观。特别需要指出的是,缺乏面向对象的软件设计能力是制约从业人员从开发者向设计者转变的重要因素。设计模式是来源于工业实践的重要开发经验,它实际上是面向对象的数据结构,掌握设计模式是掌握面向对象设计的根本要求。
课程收益
本课程从案例出发,结合工程实践场景,剖析了各类有缺陷的软件设计,针对性的描述了如何采用设计模式改进软件开发,丰富了学员实际开发经验,提升实战能力。
讲师介绍
夏曹俊 更多讲师课程
夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算机视觉,嵌入式图像处理,云安全审计项目,比赛鹰眼系统,主编出版过《C++实训教程》,并同时熟悉php,c#,java,安卓项目研发。
课程大纲
第1章:导论
1. 课程介绍 课程购买后加:726114806群下载代码 12:14
2. 导论UML和设计模式导论 23:59
第2章:创建型设计模式
1. 简单工厂方法的定义场景与实现-针对接口编程的设计思想剖析 26:28
2. 简单工厂实用工程技术:C++对象动态创建技术与配置化开发 28:31
3. 单例模式的定义场景与实现:懒汉、饿汉与多线程安全double checking 23:08
4. 单例模式的实用工程技术——从单例到多例,应用系统缓存的实现原理 22:03
5. 工厂模式的定义场景与实现——子类延迟实现父类功能的软件结构 22:50
6. 工厂模式的实用工程技术——IOC容器与工厂模式的应用 25:22
7. 抽象工厂的定义、场景与实现——相互关联关系的对象 23:30
8. 抽象工厂的实用工程技术——抽象工厂的使用场景 14:15
9. 构建者模式Builder的定义、场景与实现 35:11
10. 构建者模式的实用工程技术——代码的坏味道:算法与对象构建的隔离 24:42
11. 原型模式的定义场景与实现——对象的快速复制 21:36
12. 原型模式的实用工程技术——DRY原则与使用模式进行重构 9:20
第3章:结构型设计模式
1. 适配器模式的定义、场景与实用工程技术:对象适配与类的适配 17:12
2. 门面(外观)模式Facade的定义、场景与实用工程技术:LOD迪米特法则 17:19
3. 享元模式Flyweight的定义场景与实现:运用共享技术有效地支持大量细粒度的对象 25:20
4. 享元模式Flyweight的实用工程技术:文件夹图标、字符串、对象池资源池、数据库连接池与享元思想 7:32
5. 代理模式的定义场景与实现:控制对象访问与Cache代理 29:14
6. 代理模式的实用工程技术——AOP面向切面编程、智能指针与代理思想 43:55
7. 包装模式的定义、场景与实现——组合大于继承 19:59
8. 包装模式的实用工程技术——MFC中CView结构设计与流式文件设计思想评析 32:21
9. 组合模式的定义、场景与实现:部分/整体 33:17
10. 组合模式的实用工程技术——树形(递归)结构的面向对象实现 46:36
11. 桥接模式的定义、场景与实现:一维扩展用继承,多维扩展用桥接 12:50
12. 桥接模式的实用工程技术:桥接模式应用评析、MFC中的CArchive 8:30
第4章:行为型设计模式
1. 模板方法的定义场景与实现:将“动作”封装成对象是理解行为型模式的重要基础 15:58
2. 模板方法的实用工程技术:好莱坞法则、钩子函数与单元测试工具gtest 12:04
3. 策略模式的定义场景与实现:is A还是has A,里氏代换原则 33:19
4. 策略模式的实用工程技术——支付交易系统帐户转帐、数据信令采集中的策略模式实现原理 14:18
5. 观察者模式的定义场景与实现——订阅/发布的软件结构 42:02
6. 观察者模式的实用工程技术——出版+订阅就是观察者模式以今日头条为例 9:31
7. 命令模式的定义、场景与实现——封装调用 22:31
8. 命令模式的实用工程技术——Undo撤销与宏命令 42:25
9. 责任链模式的定义、场景与实现:击鼓传花 13:04
10. 责任链模式的实用工程技术——事件冒泡、过滤器原理与责任链实现 20:35
11. 备忘录模式的定义、场景与实现:备忘录与友元函数的应用 29:06
12. 备忘录模式的实用工程技术:httpSession、数据库快照与Cookie 8:31
13. 调停者模式的定义场景与实现——封装交互与即插即用 30:23
14. 调停者模式的实用工程技术——多对多关系交互解耦合 6:44
15. 状态模式的定义场景与实现——从if/else中提取公因式 29:08
16. 状态模式的实用工程技术——自动化流水线的状态组合与业务逻辑解耦合 6:19
17. 解释器模式的定义场景与实现——一个简单加减法运算器的实例 19:31
18. 解释器模式的工程应用——解释器与数据结构、算法和编译原理的内在关系 6:06
19. 访问者模式的定义场景与实现——一个手机配置环境的构建 19:09
20. 访问者模式的工程应用——工单派送、电脑组装与银行账户流程的工程设计解读 11:20
21. 迭代器模式方法与工程应用:STL迭代器应用与迭代器模式思想 16:49
22. 设计模式总结-OO的设计原则 14:15
第5章:项目实战
1. MVC图片编辑器项目介绍和UML知识回顾 8:28
2. MVC模式讲解 5:16
3. 项目功能说明用到的设计模式说明 9:32
4. 抽象工厂、单例、观察者、门面模式回顾和项目类图分析 13:16
5. 依赖的QT环境安装 11:03
6. 配置QT项目和信号槽代码示例 10:21
7. 创建XImageEdit项目并提升QWidget控件完成类实现 7:51
8. 手动添加打开文件的信号槽 7:33
9. 完成Qt打开并显示图片 10:20
10. 完成XEditView的初始化和载入背景图的实现和调用 11:34
11. 重载鼠标事件完成画笔功能 10:59
12. 观察者模式代码IObserver和XSubject完成 9:16
13. 观察者模式XModel和XEditView代码完成并完成代码重构 16:55
14. 完成控制器、模型、视图的抽象工厂模式创建 16:29
15. 将模型和视频与用户代码解耦合有门面模式的控制器来做 15:21
16. 重构划线到IGraph接口并添加划线的样式(颜色、链接、抗锯齿) 23:12
17. 重构XPenGraph用模板技术在工厂中注册 11:45
18. 注册了XErasGraph完成了橡皮檫功能 11:55
19. 注册了XRectGraph添加了画矩形存在未清理历史图像问题 11:34
20. 修正了矩形绘制的残影添加XImageGraph 18:30
21. 完成了Undo和Redo代码 11:37
22. 完成了画笔的粗细设置 12:39
23. 完成画笔颜色设置 12:32
24. 项目完成优化界面添加图标和按钮 9:24
大家可以点击【 查看详情】查看我的课程