VIP20
本课程属于:001-C 工程化 编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

C++ 项目重构与代码优化实战

📚 共计 30 章节
01
重构入门
什么是重构 · 为什么需要重构 · 重构与重写的区别 · 时机与原则
基础概念
02
代码坏味道识别
重复代码 · 过长函数 · 过大的类 · 过长参数列表 · 发散式变化 · 霰弹式修改
坏味道诊断
03
重构基础手法
提炼函数 · 内联函数 · 提炼变量 · 内联变量 · 改变函数声明 · 封装变量
手法核心
04
封装与抽象
封装全局变量 · 封装集合 · 以对象取代基本类型 · 以子类取代类型码 · 以策略类取代条件逻辑
封装抽象
05
简化条件逻辑
分解条件表达式 · 合并条件表达式 · 以卫语句取代嵌套条件 · 以多态取代条件表达式
条件简化
06
API重构
查询函数和修改函数分离 · 函数参数化 · 移除设值函数 · 以工厂函数取代构造函数
API接口
07
处理继承关系
函数上移/下移 · 字段上移/下移 · 提炼子类/超类 · 以委托取代继承
继承重构
08
大型重构
梳理并分解继承体系 · 过程化→面向对象 · 分离关注点 · 构建领域层
架构大型
09
代码优化基础
perf · Valgrind · gprof · 基准测试 · 优化策略选择
性能工具
10
编译器优化与代码生成
优化级别 · 内联优化 · 循环展开 · 向量化 · 链接时优化
编译器LTO
11
内存优化
内存池 · 对象池 · 减少动态分配 · 缓存友好 · 数据局部性
内存池
12
数据结构优化
vector vs list · 哈希表优化 · 跳表应用 · 选择合适结构
数据结构STL
13
算法优化
时间复杂度 · 空间换时间 · 查找优化 · 排序选择
算法复杂度
14
并发编程优化
多线程基础 · 线程安全 · 锁优化 · 读写锁 · 无锁编程
并发锁
15
异步与协程
异步模型 · C++20 协程 · 性能优势 · 异步I/O优化
协程异步
16
I/O优化
缓冲I/O · 内存映射 · 异步I/O · 零拷贝 · 序列化优化
I/O零拷贝
17
网络编程优化
Reactor · Proactor · 连接池 · 协议优化 · 序列化选择
网络高性能
18
模板元编程优化
编译期计算 · 类型萃取 · SFINAE · constexpr · 代码生成
模板元编程
19
移动语义与完美转发
右值引用 · 移动构造/赋值 · 完美转发 · 返回值优化
移动语义C++11
20
智能指针优化
unique_ptr · shared_ptr · weak_ptr · 自定义删除器 · 循环引用
智能指针RAII
21
异常安全与错误处理
异常安全保证 · RAII · 错误码 vs 异常 · noexcept优化
异常安全
22
代码风格与规范
Google Style · LLVM · 命名/注释规范 · 格式化工具
风格规范
23
静态分析工具
Clang-Tidy · Cppcheck · PVS-Studio · SonarQube · 集成
静态分析质量
24
单元测试与重构
TDD · Google Test · Mock · 测试覆盖率 · 重构测试
测试TDD
25
持续集成与代码质量
CI/CD流水线 · 代码审查 · 自动化测试 · 性能回归
CI/CD质量
26
遗留系统重构
遗留代码特征 · 安全重构 · 接缝技术 · 逐步替换 · 特性开关
遗留策略
27
设计模式在重构中的应用
策略 · 观察者 · 工厂 · 适配器 · 装饰器
设计模式重构
28
大型项目重构案例
模块化拆分 · 依赖注入 · 接口隔离 · 架构演进 · 微服务化
案例架构
29
性能调优实战
CPU热点 · 内存泄漏 · 多线程竞争 · I/O瓶颈定位
调优实战
30
重构与优化的未来
C++23/26新特性 · 工具链演进 · AI辅助重构 · 持续重构文化
趋势展望