C++等级:
0级:掌握常见C++语法和语言构造,能够顺溜地写清楚各种语言构造(很多小白鼠死在这里)
1级:掌握基本的编程范式:面向过程、面向对象、泛型编程、以及C++11/14支持的函数式编程
2级:清楚编译器在 后面干了什么(compiler under the hood-考验功力的时候到了)
3级:清楚运行时内存模型(memory under the hood)
4级:对经典库(包括但不限于STL, BOOST, Folly)应用熟练,关键原理清晰,掌握设计模式
5级:熟悉至少一个操作系统常用API和内核,调试工具和方法
6级:有清晰的机器和系统模型:CPU, Memery, Cache, GPU, Disk, I/O, Process, Thread, TCP/IP…
7级:有一定系统级应用开发经验,被系统级应用的性能、内存、规模等问题折磨过,并解决过…
8级:从头到尾设计过一个C++库、或框架,并被一定量级的应用使用过
9级:设计并开发过系统级、高性能、大规模的软件系统
10级:成为Bjarne Stroustrup,设计一门语言
先入门下学C++,然后就是开始学习数据结构与算法,算法这块长期保持刷题,然后一边深入学习C++,之后学习计算机网络,操作系统,在之后学习网络编程,项目这块放到最后面。