C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)

相信大部分同学刚毕业或者想转行做c++服务端开发的时候都很迷茫不知道从哪里开始学习,于是准备参加各种培训班或者网络培训,有不知道该怎么选择,对于在校学生或者刚出来就业的新人无疑是沉重都打击,但是却不知道从哪里下手。我写这篇文章的目的就是为了帮助更多想入行或者想转行做c++服务器的新人避免走更多的弯路,最终能够顺利的掌握相关知识找到心仪的工作。

一. 基础阶段

  1. c/c++编程语言

  2. linux基础

  3. 数据结构与算法

  4. 设计模式

  5. 脚本语言(可选)

二. 入门阶段

  1. linux系统编程

  2. linux网络编程

三. 进阶阶段

  1. 数据库mysql

  2. 分布式缓存redis

  3. 网络库

四. 项目实践阶段

  1. 百度网盘实战项目

五. 高级阶段

  1. nginx

  2. zookeeper

  3. 消息队列

  4. skynet

  5. boost

  6. 负载均衡

  7. 容器

  8. rpc

  9. 微服务 ……

六.系统学习

C/C++Linux服务器开发系统学习视频链接:C/C++Linux服务器开发/Linux后台开发架构师-学习视频

附上腾讯核心技术学习路线(T1-T9)

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第1张图片

一. 基础阶段

1. c/c++编程语言

c语言必备的入门书籍就是这本《C程序设计语言》

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第2张图片

  • 剖析C/C++编程精华

视频链接:https://pan.baidu.com/s/1_3cA9dz6vRp5iwBTfvhA8g 密码:cirr

2. linux基础

  • linux系统安装和命令、工具使用 c++服务器程序基本都是运行在linux系统下面,所以对于linux的系统安装、命令工具等的使用要学会。 下面视频获取点击:学习资料

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第3张图片

3. 数据结构与算法

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第4张图片

电子版书籍链接: https://pan.baidu.com/s/14s4FDJaTaDrUqh0AJgouag 密码:e729

4. 设计模式

设计模式是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。 使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第5张图片

视频链接:https://pan.baidu.com/s/1EL8GUdwSqwRImikdCHTsmw 密码:xehz

5. 脚本语言(可选)

做c++开发很多情况下会和其他脚本语言做混合编程,特别是游戏公司以c++配合lua脚本编程作为主流,也有一些用python, 所以建议大家学一下这两门脚本语言

  • lua书籍推荐,包括入门书籍《lua程序设计》和深入原理书籍《lua设计与实现》

二. 入门阶段

1. linux系统编程

linux下的编程你首先要学会文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC等方面的内容。 下面视频获取点击:学习资料

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第6张图片

2. linux网络编程

网络编程可以编写网络通讯程序,比如聊天程序、数据传输程序、文件传输程序等到;可以让你对网络通讯有更深的理解,当你遇到网络通讯方面的问题时,会有很深入的分析;为学习涌现很多分布式应用系统打下坚实的基础。

除了学习资料之外,其实还有很多面试的资料,包括面试题、教程、简历模板等,我也是看这些资料,还有群里大牛的指导,才得到了这份让我非常满意的工作。

IT编程技术交流qun 学习资料,免费领取

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第7张图片

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第8张图片

相比很多人学C++学的怀疑人生,我学习的过程其实没有走多少弯路,毕竟一开始就找到了优质的教程和学习资料,而且大牛带飞嘛,结果自然不同凡响。

我是感觉学习任何一门技术都不能闭门造车,因为学习过程中很多问题不是你一个人遇到过,多和同仁交流,钻牛角尖的概率低很多。

另外,作为一个过来人,也想提醒大家:想要学习C++,一定要努力且有耐心,不可能一天就能走到罗马,唯一可以做的,就是立刻出发。

三. 进阶阶段

1. 数据库mysql

  • 入门推荐《MySQL必知必会》这是最好的数据库入门书,在Amazon上长期排在数据库销售榜首,建议想快速了解数据库原理和MySQL的新手阅读。快餐性质,简洁明快,小开本,而且很薄,比较好读。

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第9张图片

 

MySQL数据库视频讲解链接:https://pan.baidu.com/s/1mWqUinQysWwbJZCAxRLrGw

密码:npa4

2. 分布式缓存redis

  • 《Redis 设计与实现》一书全面而完整地讲解了 Redis 的内部运行机制, 对 Redis 的大多数单机功能以及所有多机功能的实现原理进行了介绍, 展示了这些功能的核心数据结构以及关键的算法思想。 通过阅读本书, 读者可以快速、有效地了解 Redis 的内部构造以及运作机制, 从而学会如何更高效地使用 Redis。

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第10张图片

redis相关视频讲解链接:https://pan.baidu.com/s/1hD1GK8HJkHtf5RG1enVGDA

密码:4bfa

3. 网络库

linux c/c++网络库比较多,有boost.asio、libevent、libev、libuv、muduo、ace等, 建议找一个代码比较少够精简的来反复学习,琢磨内部原理,有效提升网络编程能力。我自己反复研究了muduo网络库几遍收获不少,你们可以选libevent、libev、libuv、muduo中的一个学习即可,其中libev和muduo最为精简,容易学习。

四. 项目实践阶段

1. 大数据云存储

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第11张图片

五. 高级阶段

1. nginx

  • Nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;Nginx可以作为一个HTTP服务器进行网站的发布处理,另外Nginx可以作为反向代理进行负载均衡的实现。

2. zookeeper

  • ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

3. 消息队列

  • 当前使用较多的消息队列有RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMq等,

4. skynet

  • Skynet是一个基于C跟lua的开源服务端并发框架, 现在很多游戏公司都在用它,特别是中小型的公司,棋牌公司,越来越多公司采用, 想往游戏方面发展建议认真学一下原理。

六.系统学习推荐

技术的瓶颈是认知的问题,认知不是知其名,还需要知其因,更需要知其原。

对于自学的朋友,耗时比较久,技术栈不完善,架构不成体系,自律性差。学习进阶、完善技术栈体系、提升自己、跳槽涨薪、往更高层次发展

推荐这个C/C++Linux 服务器开发进阶高级架构学习相关视频点击链接订阅后观看:C/C++Linux服务器开发/Linux后台开发架构师-学习视频

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第12张图片

C/C++Linux服务器开发完整学习路线(含免费学习资料下载地址)_第13张图片

 

你可能感兴趣的:(Linux服务器开发,后端开发,Linux后台开发,C/C++,Linux,Linux服务器开发,后端开发,Linux后台开发)