C/C++后端开发学习路线总结(附带实习学习经历分享)

大家好哇,九月份了;不知道大家的工作或者实习都安排的怎么样了?反正狮作为一个过来人只能在各种论坛上面看到都是哀鸿遍野;暗自惊心感慨现在年轻人不好混啊~

然后呢,狮最近后台收到不少C/C++后端怎么学的邀请回答;那这里就再发一次关于C/C++后端开发学习路线总结及实习经历分享


除了知乎呢,还有某DN,某破站上也有太多的读者询问我这样的问题:新手怎么学?要学到什么样子才能找工作?有什么学习资料推荐?


其实学习路线一类的文章网络上也有不少,但我看了很多,大部分都是罗列了许多的课程和知识点,却缺少一个类似时间轴的东西,告诉大家按照什么样的节奏来推进,所以呢,我希望补上这一个重要的信息。


这份学习路线,包含了从新手到工作分阶段所需要学习的内容、详细的知识点、可以参考的书单、电子书资源等等。给大家看C/C++后端开发的,最后一段附带我一个小老弟的实习与学习经历,发车~
路线图
开局一张图,内容全靠编,没错,咱们先来看一张全局图,先从总体上有个宏观的认识。

这张图有点大,由于微信对图片压缩的厉害,如果想要高清版的,可以私信狮:C++自动获取。

基础部分到处都能学,这里就不做过多赘述了;如若是想转行或者转岗C/C++后端的,狮之后也会写一个更加详细基础的分享;这里就先将学习路线分为十个板块来进行。

一、精进基石

1.数据结构与算法

  • 随处可见的红黑树
  • 磁盘存储链式的B树与B+树
  • 海量数据去重的Hash与BloomFilter,bitmap

2.设计模式

  • 创建型设计模式
  • 结构型设计模式

3.c++新特性

  • stl容器,智能指针,正则表达式
  • 新特性的线程,协程,原子操作,lamda表达式

4.Linux工程管理

  • Makefile/cmake/configure
  • 分布式版本控制git
  • Linux系统运行时参数命令

二、高性能网络设计

1.网络编程

  • 网络IO与select,poll,epoll
  • reactor的原理与实现
  • http/https服务器的实现
  • websocket协议与服务器实现

2.网络原理

  • 服务器百万并发实现
  • redis,memcached,nginx网络组件
  • Posix API与网络协议栈
  • UDP的可靠传输协议QUIC

3.协程框架NtyCo的实现

  • 协程设计原理与汇编实现
  • 协程调度器实现与性能测试

4.用户态协议栈NtyTcp的实现

  • 用户态协议栈设计实现
  • tcp/ip定时器与滑动窗口
  • 手把手设计实现epoll

5.高性能异步io机制io_uring

  • 与epoll媲美的io_uring
  • io_uring的使用场景

三、基础组件设计

1

### 后端开发学习路径 #### 基础理论知识构建 掌握后端开发所需的基础理论至关重要。这包括但不限于计算机网络、操作系统原理以及数据库管理系统的理解[^2]。 #### 编程语言选择与精通 对于初学者而言,C++ 是一种强大的编程工具,在游戏开发等领域应用广泛;然而Python由于其简洁性和丰富的库支持成为许多开发者入门首选之一。无论哪种语言,深入理解和大量练习都是必要的。 #### 实践经验积累 通过解决实际问题来提高技能水平非常重要。可以利用在线平台如 LeetCode 进行算法题目训练,同时积极参与开源项目贡献代码或研究知名框架/软件背后的实现机制也是很好的途径。 #### 学习资源推荐 - **书籍**: 不要犹豫购买高质量的技术图书作为参考资料。 - **名校课程**: 探索来自顶尖学府如麻省理工学院(MIT) 或卡内基梅隆大学(CMU) 的公开课程材料。 - **文档和教程站点**: - 小林Coding提供了详细的指南适合新手快速上手[^1]; - 菜鸟教程覆盖范围广且易于理解; - 易百教程同样是一个不错的选择,尤其针对不同层次的学习者设计了相应的教学计划。 #### 社区交流互动 加入专业技术论坛比如知乎等社交平台上的讨论组能够帮助获取最新行业动态并与其他爱好者分享见解。 ```python # 示例:如何查找GitHub上的热门项目 import requests def find_popular_projects(language='all'): url = f"https://api.github.com/search/repositories?q=language:{language}&sort=stars&order=desc" response = requests.get(url) data = response.json() for item in data['items'][:5]: print(f"Name: {item['name']} | Stars: {item['stargazers_count']}") find_popular_projects('c++') ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值