Logo
☆☆☆☆☆
0.0
Intermediate
30h

掌握C++中的软件设计模式与架构

软件工程的研究人员和实践者注意到,软件项目中的某些部分常常可以通过之前解决类似问题的方法来应对。这促使人们开始记录软件设计与架构模式,这些模式是针对一类问题的已知解决方案。 本课程首先通过回答“什么是软件模式?它与算法有何不同?”这一问题,帮助你从整体上理解软件模式。随后,你将学习两类模式——软件设计模式和架构模式。接着,你将掌握常见的C++惯用法。最后,你将了解用于并发编程的软件模式。 课程结束时,你将掌握实用且有效的工具,能够提升代码质量与开发效率。你还将具备分析软件项目特定部分的能力,选择合适的模式并正确应用。

8 Lessons
Included in Subscription Plan
Personalized Learning
Powered by AI
掌握C++中的软件设计模式与架构
软件工程的研究人员和实践者注意到,软件项目中的某些部分常常可以通过之前解决类似问题的方法来应对。这促使人们开始记录软件设计与架构模式,这些模式是针对一类问题的已知解决方案。 本课程首先通过回答“什么是软件模式?它与算法有何不同?”这一问题,帮助你从整体上理解软件模式。随后,你将学习两类模式——软件...

WHAT YOU'LL LEARN

对软件设计模式与架构模式之间差异的理解

Content

8 Lessons • 0 Quizzes • 0 Challenges

简介
  1. 1

    为什么选择这门课程

  2. 2

    前置知识、方法概述及学习目标

设计模式简介
  1. 1

    设计模式概述

  2. 2

    起源与历史

  3. 3

    什么是模式的特征?

  4. 4

    反模式

  5. 5

    模式与设计模式

  6. 6

    三种类型的模式

  7. 7

    设计模式的组成部分

  8. 8

    算法、框架与设计模式

  9. 9

    编写模式

  10. 10

    自我测验:设计模式简介

深入探究设计模式
  1. 1

    GoF设计模式的类型

  2. 2

    策略模式

  3. 3

    继承与组合

  4. 4

    策略模式与委托

  5. 5

    工厂方法设计模式

  6. 6

    工厂方法示例

  7. 7

    练习:工厂方法

  8. 8

    解决方案:工厂方法

  9. 9

    自我测验:策略模式与工厂方法

  10. 10

    单例模式

  11. 11

    单例模式实现

  12. 12

    单例模式的替代方案

  13. 13

    适配器设计模式

  14. 14

    适配器设计模式示例

  15. 15

    练习:适配器模式

  16. 16

    解决方案:适配器模式

  17. 17

    自我测验:单例模式与适配器模式

  18. 18

    桥接模式

  19. 19

    桥接设计模式示例

  20. 20

    PImpl(指向实现的指针)

  21. 21

    练习:PImpl 惯用法

  22. 22

    解决方案:PImpl 惯用法

  23. 23

    自测练习:PImpl 模式与桥接模式

更多设计模式
  1. 1

    装饰器设计模式

  2. 2

    装饰器设计模式示例

  3. 3

    练习:装饰器设计模式

  4. 4

    解决方案:装饰器设计模式

  5. 5

    测验自己:装饰器设计模式

  6. 6

    外观设计模式

  7. 7

    外观设计模式示例

  8. 8

    组合设计模式

  9. 9

    组合设计模式示例

  10. 10

    练习:组合设计模式

  11. 11

    解决方案:组合设计模式

  12. 12

    自测练习:外观模式与组合模式

  13. 13

    代理设计模式

  14. 14

    代理设计模式示例

  15. 15

    测验自己:代理设计模式

  16. 16

    观察者设计模式

  17. 17

    观察者设计模式示例

  18. 18

    练习:观察者设计模式

  19. 19

    解决方案:观察者设计模式

  20. 20

    自我测验:观察者设计模式

  21. 21

    访问者设计模式

  22. 22

    访问者设计模式示例

  23. 23

    模板方法

  24. 24

    模板方法模式示例

  25. 25

    自我测验:访问者模式与模板方法设计模式

惯用法
  1. 1

    RAII 习惯用法

  2. 2

    RAII 模式示例

  3. 3

    拷贝-交换惯用法

  4. 4

    练习:拷贝-交换惯用法

  5. 5

    解决方案:拷贝交换惯用法

  6. 6

    多态性

  7. 7

    多态性示例

  8. 8

    练习:多态性

  9. 9

    解决方案:多态性

  10. 10

    奇异递归模板模式(CRTP)

  11. 11

    CRTP(静态多态)

  12. 12

    CRTP(Mixin)

  13. 13

    练习:CRTP 添加类

  14. 14

    解决方案:CRTP 添加类

  15. 15

    练习:CRTP派生类限制

  16. 16

    解决方案:CRTP派生类限制

  17. 17

    表达式模板

  18. 18

    练习:表达式模板

  19. 19

    解决方案:表达式模板

  20. 20

    策略模式

  21. 21

    练习:适用于“MyInt std::map”键的模板策略

  22. 22

    解决方案:适用于 "MyInt std::map" 键的模板策略

  23. 23

    特性

  24. 24

    练习:使用特质扩展数据类型分类

  25. 25

    解决方案:使用特质扩展数据类型分类

  26. 26

    标签调度惯用法

  27. 27

    练习:标签分派

  28. 28

    解决方案:标签调度

  29. 29

    类型擦除

  30. 30

    练习:类型擦除

  31. 31

    解决方案:类型擦除

架构模式
  1. 1

    分层模式

  2. 2

    管道-过滤器模式

  3. 3

    中介者模式

  4. 4

    模型-视图-控制器模式

  5. 5

    反应器模式

  6. 6

    自测题:架构模式

并发模式
  1. 1

    复制的值

  2. 2

    练习:检查竞态条件

  3. 3

    解决方案:检查竞态条件

  4. 4

    线程局部存储

  5. 5

    任务、未来和承诺

  6. 6

    练习:并行化标量积计算

  7. 7

    解决方案:并行化标量积计算

  8. 8

    作用域锁定

  9. 9

    策略性加锁

  10. 10

    线程安全接口

  11. 11

    保护性暂停

  12. 12

    主动对象

  13. 13

    监视对象

结论
  1. 1

    课程总结

Certificate of Completion

Showcase your accomplishment by sharing your certificate of completion.

Course Author:Anonymous User

Reviews

Read reviews from students who have taken this course and share your own experience.

Reviews & Comments (0)