导航
课程首页
  • PM-Summit 全球产品经理大会云会员
  • SDCon 全球软件研发技术大会云会员
  • ML-Summit 全球机器学习技术大会云会员
  • C++性能优化高端培训
  • AI全栈开发实战营
精品课 极客时间

AI 搜索

登录
会员中心
消息
历史
创作中心
创作
学习中心
成为讲师

C++ 设计模式原理与实战大全-架构师需备课程

C++ 设计模式原理与实战大全-架构师需备课程
共72节 6503人在学 课程详情
课程目录
讨论留言
  • 导论

    • 课程介绍
    • 导论UML和设计模式导论
  • 创建型设计模式

    • 简单工厂方法的定义场景与实现-针对接口编程的设计思想剖析
    • 简单工厂实用工程技术:C++对象动态创建技术与配置化开发
    • 单例模式的定义场景与实现:懒汉、饿汉与多线程安全double checking
    • 单例模式的实用工程技术——从单例到多例,应用系统缓存的实现原理
    • 工厂模式的定义场景与实现——子类延迟实现父类功能的软件结构
    • 工厂模式的实用工程技术——IOC容器与工厂模式的应用
    • 抽象工厂的定义、场景与实现——相互关联关系的对象
    • 抽象工厂的实用工程技术——抽象工厂的使用场景
    • 构建者模式Builder的定义、场景与实现
    • 构建者模式的实用工程技术——代码的坏味道:算法与对象构建的隔离
    • 原型模式的定义场景与实现——对象的快速复制
    • 原型模式的实用工程技术——DRY原则与使用模式进行重构
  • 结构型设计模式

    • 适配器模式的定义、场景与实用工程技术:对象适配与类的适配
    • 门面(外观)模式Facade的定义、场景与实用工程技术:LOD迪米特法则
    • 享元模式Flyweight的定义场景与实现:运用共享技术有效地支持大量细粒度的对象
    • 享元模式Flyweight的实用工程技术:文件夹图标、字符串、对象池资源池、数据库连接池与享元思想
    • 代理模式的定义场景与实现:控制对象访问与Cache代理
    • 代理模式的实用工程技术——AOP面向切面编程、智能指针与代理思想
    • 包装模式的定义、场景与实现——组合大于继承
    • 包装模式的实用工程技术——MFC中CView结构设计与流式文件设计思想评析
    • 组合模式的定义、场景与实现:部分/整体
    • 组合模式的实用工程技术——树形(递归)结构的面向对象实现
    • 桥接模式的定义、场景与实现:一维扩展用继承,多维扩展用桥接
    • 桥接模式的实用工程技术:桥接模式应用评析、MFC中的CArchive
  • 行为型设计模式

    • 模板方法的定义场景与实现:将“动作”封装成对象是理解行为型模式的重要基础
    • 模板方法的实用工程技术:好莱坞法则、钩子函数与单元测试工具gtest
    • 策略模式的定义场景与实现:is A还是has A,里氏代换原则
    • 策略模式的实用工程技术——支付交易系统帐户转帐、数据信令采集中的策略模式实现原理
    • 观察者模式的定义场景与实现——订阅/发布的软件结构
    • 观察者模式的实用工程技术——出版+订阅就是观察者模式以今日头条为例
    • 命令模式的定义、场景与实现——封装调用
    • 命令模式的实用工程技术——Undo撤销与宏命令
    • 责任链模式的定义、场景与实现:击鼓传花
    • 责任链模式的实用工程技术——事件冒泡、过滤器原理与责任链实现
    • 备忘录模式的定义、场景与实现:备忘录与友元函数的应用
    • 备忘录模式的实用工程技术:httpSession、数据库快照与Cookie
    • 调停者模式的定义场景与实现——封装交互与即插即用
    • 调停者模式的实用工程技术——多对多关系交互解耦合
    • 状态模式的定义场景与实现——从if/else中提取公因式
    • 状态模式的实用工程技术——自动化流水线的状态组合与业务逻辑解耦合
    • 解释器模式的定义场景与实现——一个简单加减法运算器的实例
    • 解释器模式的工程应用——解释器与数据结构、算法和编译原理的内在关系
    • 访问者模式的定义场景与实现——一个手机配置环境的构建
    • 访问者模式的工程应用——工单派送、电脑组装与银行账户流程的工程设计解读
    • 迭代器模式方法与工程应用:STL迭代器应用与迭代器模式思想
    • 设计模式总结-OO的设计原则
  • 项目实战

    • MVC图片编辑器项目介绍和UML知识回顾
    • MVC模式讲解
    • 项目功能说明用到的设计模式说明
    • 抽象工厂、单例、观察者、门面模式回顾和项目类图分析
    • 依赖的QT环境安装
    • 配置QT项目和信号槽代码示例
    • 创建XImageEdit项目并提升QWidget控件完成类实现
    • 手动添加打开文件的信号槽
    • 完成Qt打开并显示图片
    • 完成XEditView的初始化和载入背景图的实现和调用
    • 重载鼠标事件完成画笔功能
    • 观察者模式代码IObserver和XSubject完成
    • 观察者模式XModel和XEditView代码完成并完成代码重构
    • 完成控制器、模型、视图的抽象工厂模式创建
    • 将模型和视频与用户代码解耦合有门面模式的控制器来做
    • 重构划线到IGraph接口并添加划线的样式(颜色、链接、抗锯齿)
    • 重构XPenGraph用模板技术在工厂中注册
    • 注册了XErasGraph完成了橡皮檫功能
    • 注册了XRectGraph添加了画矩形存在未清理历史图像问题
    • 修正了矩形绘制的残影添加XImageGraph
    • 完成了Undo和Redo代码
    • 完成了画笔的粗细设置
    • 完成画笔颜色设置
    • 项目完成优化界面添加图标和按钮
播放页问题反馈
视频学习中有任何产品建议都可由此反
馈,我们将及时处理!

课时介绍

观察者模式XModel和XEditView代码完成并完成代码重构-项目实战C++ 设计模式原理与实战大全-架构师需备课程

课程介绍

C++属于难学易用的工程开发语言,C++繁复的语法往往使得开发人员过于强调细节而缺乏软件体系结构的大局观。特别需要指出的是,缺乏面向对象的软件设计能力是制约从业人员从开发者向设计者转变的重要因素。设计模式是来源于工业实践的重要开发经验,它实际上是面向对象的数据结构,掌握设计模式是掌握面向对象设计的根本要求,该课程基于C++语言讲解设计模式。
推荐课程

信息系统项目管理师自考笔记

李明 · 756人在学

python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

王先生 · 22193人在学

手把手搭建Java超市管理系统【附源码】(毕设)

汤小洋 · 4222人在学

Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

黄菊华 · 793人在学

基于SSM酒店管理系统(毕设)

小尼老师 · 843人在学

java项目实战之购物商城(java毕业设计)

Long · 5161人在学

手把手搭建Java求职招聘系统【附源码】(毕设)

汤小洋 · 1510人在学

Python Django 深度学习 小程序

钟翔 · 2333人在学

城管局门前三包管理系统+微信小程序(vue+springboot)

赖国荣 · 605人在学

Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

李杰 · 3998人在学

正在试验
后自动删除环境
课程实验
本次实验时间已到期 00:00:00

    订阅失败

    C++ 设计模式原理与实战大全-架构师需备课程
    C++ 设计模式原理与实战大全-架构师需备课程 ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    课件正在飞速打包中,请耐心等待几秒钟~
    首页
    博客
    下载
    学习
    社区
    AI搜索
    GitCode
    InsCodeAI
    技术会议
    会员中心
    创作中心
    联系我们
    工作时间: 8:30 - 22:00
    客服电话: 400-660-0108
    kefu@csdn.net在线客服
    • 关于我们
    • 招贤纳士
    • 商务合作
    • 寻求报道
    • 京ICP备19004658号
    • 经营性网站备案信息
    • 公安备案号11010502030143
    • 营业执照
    • 北京互联网违法和不良信息举报中心
    • 家长监护
    • 中国互联网举报中心
    • 网络110报警服务
    • Chrome商店下载
    • 账号管理规范
    • 版权与免责声明
    • 版权申诉
    • 出版物许可证
    • ©1999-2024北京创新乐知网络技术有限公司