Cpp后台需要学习的知识多而杂,务必要制定一个切实可行的学习计划。
…
本图参考《后台开发:核心技术与应用实践》
# 后台开发
## 常用类库
### JSON
* 掌握JSON的结构
* JSON相关库的使用
* JSON的用途
### Protobuff
* 了解Protobuff的特点
* 能熟练使用Protobuff
* 了解Protobuff的用途
## HTTP协议
### HTTP协议
* HTTP协议结构
* HTTP的原理
### CGI
* 掌握CGI的环境变量
* 熟练掌握GET和POST参数的使用
### FASTCGI
* 了解FASTCGI是什么
## 进程通信
### 多线程
* 了解多线程的使用、属性
* 了解进程同步问题
* 了解多线程重入问题
### 进程
* 掌握进程的创建与结束
* 掌握僵尸进程和守护进程
* 熟练使用daemon函数
### 进程间通信
* 掌握管道、共享内存和信号量的使用
* 了解消息队列
* 掌握ipcs工具的使用
## 网络通信
### TCP协议
* 深入了解TCP协议和状态流转图
* 掌握超时重传、滑动窗口、与用塞控制机制
* 熟练使用网络编程api
* 了解TCP协议选项
* 了解网络字节序和主机序的区别
* 可以轻松地写出一个客户端和服务器端
### 网络IO模型
* 了解网络IO模型
* 知道select\poll\epoll的使用方法和原理
* 了解select\poll\epoll的区别
### 网络分析工具
* 熟练使用ping\tcpdump\netstat\lsof四款工具
## 编译调试
### 编译与链接
* 了解编译与链接过程中都发生了什么
### Makefile的编写
* 能熟练地编写Makefile
### 目标文件
* 了解ELF文件类型
* 了解两种视图下ELF文件的内容
* 了解处理目标文件相关工具
### 调试工具
* 熟练使用strace\gdb调试程序
* 熟练使用top\ps\valgrind工具分析进程
## 编程语言
### 语法
* 熟练掌握函数、数组指针、引用、结构体、预处理等语法知识
### 面向对象
* 类与对象
* 掌握类的封装性
* 掌握构造函数、析构函数、静态数据成员
* 掌握类模板
* 会计算对象的存储空间
* 类的继承与派生
* 熟练使用类的继承与派生
* 了解派生类的访问属性
* 类的多态
* 熟练使用类的多态和虚函数
* 能使用单例模式
* 掌握纯虚函数的用法
### STL的使用
* 掌握string\vector\map\set\的使用和原理
* 使用时需注意的细节
欢迎与我分享你的看法。 转载请注明出处:http://taowusheng.cn/