跳到主要内容
CodeAtlas
C+

C++

30 周

性能与抽象的极限平衡

适合谁:想做游戏引擎、基础设施、量化、嵌入式的进阶开发者

难度
共 5 个阶段 · 30 周

这条路上最常见的三个误区

  • 语法书从头看到尾 —— C++ 的正确学法是「用到哪、学到哪」
  • 绕过 RAII 直接写裸指针 —— 这是 C++ 与 C 最大的差别,也是面试必问
  • 只刷算法题 —— 没碰过编译、链接、性能分析,进不了基础架构岗

第一周就做这三件事

  1. 1装 CMake + clang,能把一个三文件工程编译起来
  2. 2把一段 C 风格代码改写成 RAII 版本(用 unique_ptr 与析构函数)
  3. 3用 chrono 或 perf 测一次循环耗时,学会看优化前后的差异

「准备期」是拖延的另一种说法。先跑起来,再谈规划。

分阶段执行

按每周 10–12 小时估算,有基础可压缩
学习进度 0%0/5 阶段 · 约 0/30 周
  1. 1

    阶段一 · 从 C 到 C++

    建议 4 周
    阶段目标

    摆脱 C 的思维写 C++

    知识点
    引用与 const类与对象、构造析构运算符重载继承与虚函数RAII 思想
    产出项目

    手写 String 类(拷贝控制 + 移动语义)

    查看项目要求
    验收标准

    能解释虚函数表;能写出异常安全的类

  2. 2

    阶段二 · 现代 C++

    建议 5 周
    阶段目标

    掌握 C++11/17/20 的核心特性

    知识点
    智能指针移动语义与完美转发Lambda 与 function模板与 SFINAE/ConceptsSTL 容器与算法
    产出项目

    泛型矩阵库(支持运算符与表达式模板)

    查看项目要求
    验收标准

    能手写 make_unique;能解释 std::move 做了什么

  3. 3

    阶段三 · 并发与性能

    建议 5 周
    阶段目标

    写出高性能的多线程程序

    知识点
    thread / mutex / condition_variable原子操作与内存序无锁队列CPU Cache 与伪共享perf / 火焰图
    产出项目

    高性能线程池 + 无锁队列

    查看项目要求
    验收标准

    压测 QPS 有量化提升;能用 perf 定位热点函数

  4. 4

    阶段四 · 系统与网络

    建议 6 周
    阶段目标

    能做系统级组件

    知识点
    epoll 与 Reactor 模式TCP/IP 协议栈内存分配器原理序列化(Protobuf)CMake 工程化
    产出项目

    基于 epoll 的高并发网络服务器

    查看项目要求
    验收标准

    支持万级连接压测;代码有完整 CMake 构建

  5. 5

    阶段五 · 方向深耕

    建议 10 周
    阶段目标

    在某个高价值方向形成深度

    知识点
    (选一)渲染引擎 / 数据库内核 / 推理引擎 / 量化交易阅读开源项目源码性能优化专项论文与工程结合
    产出项目

    给知名开源项目提交 3 个被合并的 PR

    查看项目要求
    验收标准

    能讲清该项目核心模块设计;有可验证的性能贡献

其他路径