当前位置 博文首页 > haimianjie2012的专栏:C++后台开发技术栈
目录
岗位要求
Linux C++开发(vivio)
C++后台开发技术栈
熟悉掌握多线程/多进程
网络编程
常见RPC框架
设计模式
gdb调试等技术
计算框架mpi、tensorflow的研究与优化,不断提升性能与稳定性,支撑高效地算法模型训练
负责中间件、公共组件库的设计与开发,如日志、配置中心、rabbitmq、mysql、redis、RPC等框架
2、负责tars二次开发与优化,解决java应用与C++交互融合问题
具有较强的后台Server架构设计、开发以及性能调优能力
精通TCP/IP,HTTP/s,WebSocket网络通讯协议、进程间通讯、多线程编程,熟悉Unix/Linux下常用架构设计方法;
5. 熟练掌握Apache,nginx等常用Web Server,以及cgi,fastcg等,具有良好的代码编写习惯;
6. 熟悉Mysql、NoSQL(memcached, redis))存储,
熟悉lua,shell脚本语言,
熟悉常用的数据结构与算法
受《C++后台开发学习路线》启发,整合了网上C++后台开发相关的资料
C++后台开发技术学习栈
?? ?1.C++基础3个月
?? ??? ?《C和指针》、《C专家编程》
?? ??? ?《C++Primer》
?? ??? ?《深入探索C++对象模型》
?? ??? ?《Effective C++》《More Effective C++》
?? ??? ?《现代C++教程:高速上手C++11/14/17/20》
?? ??? ??? ?https://github.com/changkun/modern-cpp-tutorial
?? ?2.C++进阶
?? ??? ?STL
?? ??? ??? ?《C++标准程序库》
?? ??? ??? ?《Effective STL中文版》
?? ??? ??? ?《STL源代码分析》
?? ??? ?模板
?? ??? ??? ?《C++Templates中文版》
?? ?3.计算机网络
?? ??? ?《图解Http》《图解TCP/IP》《网络是怎样连接的》
?? ??? ?《计算机网络》
?? ??? ?《Tcp/Ip详解卷:协议》
?? ?4.操作系统
?? ??? ?《现代操作系统》
?? ??? ?《深入理解计算机系统》
?? ?5.网络编程
?? ??? ?《Unix网络编程》
?? ??? ?《Unix环境高级编程》
?? ??? ?《TCP/IP 网络编程》
?? ??? ??? ?比较有趣
?? ??? ?《Linux 多线程服务端编程:使用 muduo C++ 网络库》
?? ??? ?《Linux 高性能服务端编程》
?? ??? ??? ?云里雾里
?? ?5.数据结构
?? ??? ?《力扣》
?? ??? ??? ?重点刷HOT 100 的那 100 道题,来来回回的刷,一道题最多的时候来回刷了七八遍
?? ??? ??? ?面试题:基本属于简单或者中等难度类型;笔试题:困难的难度。Leetcode一般提前三到四个月,刷两遍
?? ??? ?《剑指offer》
?? ?6.数据库
?? ??? ?《高性能MySQL》
?? ??? ?《Redis设计与实现》
?? ?7.项目
?? ??? ?根据陈硕大神写的《Linux高性能服务器编程:使用muduo C++网络库》进行改编
?? ??? ?web高性能服务器
?? ??? ?根据 TinyHTTP 和 游双老师的《Linux 高性能服务端编程》的课后大作业为基础,做的自己的 HTTP 服务器
??
?? ?8.开源项目(练习基础)
?? ??? ?C++后台开发有哪些练基础的开源项目? - 程序员柠檬的回答 - 知乎
https://www.zhihu.com/question/39169728/answer/1653954976
?? ??? ?网络库、RPC框架、数据库、配置文件处理、消息队列、序列化等等
?? ?9.C++开发方向
?? ??? ?服务器后台开发
?? ??? ?应用开发工程师(QT\MFC,偏前端)
?? ??? ?C++游戏开发工程师(cocosdex等)
?? ??? ?C++驱动开发、逆向工程、网络完全
?? ??? ?嵌入式软件开发(linux平台,c/c++)
?? ??? ?音视频方向(协议优化)
?? ??? ?图像处理(医学图像,机器视觉,偏算法)
? ?10. 电子书
? ? ? ? https://github.com/forthespada/CS-Books
cs