C++程序并行处理与多线程处理
|
- 并行处理原理
- 多线程与线程池
- 线程同步,同步事件和同步句柄
- 线程的创建、终止、挂起和恢复
- Timer的使用
- 线程间互斥
- 互斥对象——更加灵活的同步方式
- 线程间通信
- 进程间数据传输
- C++并发与多线程处理案例实践与分析
|
单元测试简介
|
- 单元测试的范围
- 单元测试是一种设计
- 哪些代码需要单元测试
- 单元测试的时机
- 单元测试的盲目性
|
单元测试设计原则 |
- 测试任何可能出现错误的地方
- 测试边界条件
- 必须100%通过
- 测试用例应该独立
- 测试依赖于接口
- 固定类方法的调用顺序
- 测试依赖于接口
|
类测试过程 |
- 构建单元级测试
- CRC Cards
- 测试驱动复用
- 编码重构
- 持续集成
|
测试覆盖性分析
|
- 行覆盖
- 累计行覆盖
- 基本块覆盖
- 分支(判断)覆盖
- 条件覆盖
- MC/DC覆盖(DO-178B标准)
|
使用CppUnit编写单元测试
|
- 构建单元测试
- CppUnit的各种断言与自定义断言
- CppUnit框架
- CppUnit测试的组成
- CppUnit和异常
- CppUnit测试骨架
|
CppUnit测试骨架 |
|
CppUnit单元测试实例 |
- 源代码的各个组成部分。
- 设置CppUnit环境。
- 为产品代码添加测试代码
- 执行单元测试
- 测试结果分析
|
重构 |
- 什么是重构
- 重构的基本原则
- 开始一个重构实例
- 优秀程序结构的风格
- 如何观察代码
- 代码的坏味道
- 重构名录
- 重新组织函数与属性
- 重新组织对象关系
- 简化表达式
- 组织继承体系
- 如何让重构成为习惯
- 重构案例实践与分析
|
设计模式 |
初探设计模式
- 何为设计模式
- 模式的描述
- 模式的分类
- 模式之本-OOD设计基本原则
- 创建型模式
- 结构型模式
- 行为型模式
|
架构设计与文档 |
- 架构设计的原则
- 架构设计的范围
- 架构设计常见问题与解决办法
- 文档结构
- 架构描述形式
- 文档质量要求
- 文档检查点
- 文档编写指南
|
详细设计与文档 |
- 详细设计的原则
- 详细设计的范围
- 文档结构
- 架构描述形式
- 文档质量要求
- 文档检查点
- 文档编写指南
- 详细设计常见问题与解决办法
|