? ▶ 好想你 (163.com)
为节省时间,可直接跳转到 --> ?干货
目录
?前言
?来源
?现状
?干货
入门阶段
入门项目
学习顺序
?大二打算
?计划修正(可选方案)
初始
后续修订
?计划2.0
书籍?
项目?
?前言
来源的20篇博客,视频中,不少是23年的,我们要与时俱进,把握企业当前最需要的技术
2023/8/6,大一一年,即将结束,目前打算是再用 一个学期 + 寒假,打C++基础(Linux,计网,计组,数据库,数据结构与算法,常用框架,一些单体项目....),大二下期间确定好细分方向,着手准备简历投递。在此,通过掘金,CSDN,B站,力扣,InfoQ,Google,bing等,总结全网C++路线中的精华,结合当下学习情况,为接下来大二的一年和寒假·暑假,做好规划。
?来源
(1)熬夜肝了这一份C++开发学习路线 - 掘金 (juejin.cn)
(2)C/C++后端开发详细路线图来了! - 掘金 (juejin.cn)
(3)http://t.csdn.cn/QRLCB
(4)http://t.csdn.cn/PH7fk
(5)http://t.csdn.cn/DD6Bk
(6)鱼皮 C++ 学习路线一条龙! - 哔哩哔哩 (bilibili.com)
(7)自学C/C++的书籍推荐(自学C/C++看书路线推荐)(我自己读过的一部分有关C/C++开发相关的书籍)| 科普视频教程_哔哩哔哩_bilibili
(8)想做C语言/C++开发?这些才是你该学的东西!C语言/C++直通企业级开发的详细学习路线_哔哩哔哩_bilibili
(9)经验分享|秋招总结(侧重提前批)& C++ 学习路线 - 力扣(LeetCode)
(10)Linux C++ 后台开发系统学习路线(2023) | 编程指北 (csguide.cn)
(11)C++后台开发学习路线(已多人拿下腾讯后台开发)_后台开发_C++后台开发_InfoQ写作社区
(12)从入门到精通:C++ 学习路线指南,附详细学习计划_c++_小万哥_InfoQ写作社区
(13)非常详细的 Linux C/C++ 学习路线总结!助我拿下腾讯offer_51CTO博客_linux c++教程
(14)cs-roadmap/c++/2022_最新C++开发学习路线_科班版.md at main · tomstillcoding/cs-roadmap (github.com)
(15)这才是你最想要的 C++ 学习路线 (zhihu.com)
(16)2023年最值得收藏的C++入门学习路线(?) | Java程序员进阶之路 (tobebetterjavaer.com)
(17)2021年C++学习路线以及知识整理汇总 - 知乎 (zhihu.com)
?现状
大一即将结束
---->工具
(1)熟练使用Google,GPT,Bing和stackOverFlow检索
(2)正在养成阅读英文文档的习惯
(3)Github学生认证,Copilot等插件
---->技术栈
(1)了解前端三大件(期末大作业)
(2)了解C++(314个黑马C++视频,《Essential C++》)
(3)了解Mysql(黑马Mysql视频学到索引优化,《Mysql必知必会》和视频同步)
(4)了解Go(字节青训营课程),初步了解依赖管理,性能调优和内存管理(看了一遍)
---->算法和数据结构
(1)全网相当于 洛谷普及-100题 或 力扣100道中等题
(2)蓝桥杯C++A组省三,天梯团队三等奖
(3)500页算法书学了50%,Acw辅导课刚起步
(4)参加力扣周赛,牛客月赛的习惯
---->项目
(1)青训营 Socks5代理服务器 等单体项目(有个印象)(100~300行)
(2)(旅馆住宿 / 学生信息)管理系统 (不含数据库,前端,框架等)(500~700行)
【补充】
(1)0开发经验,知识面还未形成
(2)算法,未开始系统大量的刷题,力扣周赛只有2~3题
?干货
入门阶段
(1)查漏补缺,会的或者重复的部分,就跳过
(2)从目录入手,重点学习项目所需,或面试所需内容,不必整本啃完
(3)部分内容不必看书,直接看(博客 / 文档)提高效率
(4)侯捷的书可以结合视频学习
网站?
cppreference.com
书籍?
C++
《STL 源码剖析》①《Effective C++》①《深度探索C++对象模型》第3章《C++ 11 新特性》《C++ 内存管理》操作系统
《鸟哥的linux私房菜》②《Linux高性能服务器编程》计网
《计算机网络:自顶向下》③《TCP/IP详解卷1》数据库
《MySQL必知必会》①《MySQL技术内幕·InnoDB存储引擎》③《Redis设计与实现》计组
《计算机组成原理》②设计模式
《大话设计模式》Web开发
《图解HTTP》视频?
侯捷STL泛型编程....
入门项目
a. 具体文档 / 视频教程,直接Bing,Google,百度,B站,Github,Youtube
b. 确定项目后,啃源码前,首先要先跑通,git clone到本地,将BUG一点一点解决了,能跑通了再开始学!小白可以跟B站。
c. 注意不要做重复项目(技术栈,流程几乎一样的)
d. 下列项目,大部分都可以放上简历!(少数为初学者巩固语法)
建议“项目驱动”的学习方式
小游戏
俄罗斯方块(Github,Youtube)编程语言
C++实现自己的编程语言工具和应用
开发自己的文本编辑器基于C++实现一个迷你STL简单JSON库轻量级Web服务器商城系统实现标准库部分容器和算法,对标准库进行扩充利用C/C++开发基于B+树的小型关系型数据库libqalculate(多功能计算器桌面应用)spdlog(C++日志库)网络编程
网络编程库muduo微信RPC框架phxrpc牛客Linux服务器教程高性能Web服务器Linux C++ WebServer轻量级网络框架,线程池技术,C++11TinyWebServer搭建一个HTTP服务器(十几行代码,重点是理解背后逻辑)搭建自己的RPC系统workflow(搜狗开源的C++服务器引擎)分布式
MIT 6.824中文教程(分布式)学习顺序
大致建议是
(1)先学C++和数据结构与算法
(2)再学计组和操作系统
(3)最后数据库与计网...
但是我是学完C++直接Mysql了,影响不大,学Mysql时也接触了一些Centos命令行
?大二打算
进行中
(1)黑马Mysql视频(×,已学到索引调优,暂时用不上,先放放)
(2)《Mysql必知必会》(×,已学到索引调优,暂时用不上,先放放)
(3)《算法训练营入门篇》(继续学习)
(4)Acw蓝桥杯辅导课(继续学习)
(5)《Essential C++》(还未开始,找时间速刷)
新起点
(1)《Effective C++》(速刷完《Essential C++》后学)
(2)《鸟哥的Linux私房菜》(搭配本学期Linux学习,最好再找个视频辅助学习)
(3)有空打打比赛(每场补1道题),整点小项目(项目源码必须先跑通,不然白给)
考虑到大二上课程
软件工程导论,多媒体技术,JavaSE,毛概 --> B站自学,及格万岁
Linux,数据结构与算法 --> 已在计划中
概率论与数理统计,英语 --> 正常上课
再次总结本学期任务
一,算法
1,蓝桥杯辅导课:刷题 + 视频。
2,《算法训练营》 :刷题 + 看书。
3,力扣,牛客比赛:有空打一下。
4,洛谷官方题单:补充学习。
二,Linux
1,《鸟哥的Linux私房菜》(再看书)
2,黑马Linux视频(先视频)
三,C++
1,《Essential C++》
2,《Effective C++》
3,小项目:Github / B站 -- 源码 / 说明文档完备的项目
(借助Bing, Google, 百度, GPT, 各种reference -- > 跑通源码 and 提高效率)
四,Java
1,B站20小时JavaSE速成
五,四六级 and 口语
1,六级考试
2,四级口语(口语练习网站)
?计划修正(可选方案)
初始
佬,请教下C++方向的问题,211本,刚大二,这一年的学习计划,争取看完下列书目,每个书目有可能的话,会配合视频学习,还有从网上找的C++项目
(1)书籍
a.
****C++
《STL 源码剖析》①
《Effective C++》①
《深度探索C++对象模型》第3章
《C++ 11 新特性》
《C++ 内存管理》
b.
****操作系统
《鸟哥的linux私房菜》②
《Linux高性能服务器编程》
c.
****计网
《计算机网络:自顶向下》③
《TCP/IP详解卷1》
d.
****数据库
《MySQL必知必会》①
《MySQL技术内幕·InnoDB存储引擎》③
《Redis设计与实现》
e.
****计组
《计算机组成原理》②
f.
****设计模式
《大话设计模式》
g.
****Web开发
《图解HTTP》
h.
****视频?
侯捷STL泛型编程....
(2)项目
建议“项目驱动”的学习方式
a.
****小游戏
俄罗斯方块(Github,Youtube)
b.
****编程语言
C++实现自己的编程语言
c.
****工具和应用
开发自己的文本编辑器
基于C++实现一个迷你STL
简单JSON库
轻量级Web服务器
商城系统
实现标准库部分容器和算法,对标准库进行扩充
利用C/C++开发基于B+树的小型关系型数据库
libqalculate(多功能计算器桌面应用)
spdlog(C++日志库)
d.
****网络编程
网络编程库muduo
信RPC框架phxrpc
牛客Linux服务器教程
高性能Web服务器
Linux C++ WebServer
轻量级网络框架,线程池技术,C++11
TinyWebServer
搭建一个HTTP服务器(十几行代码,重点是理解背后逻辑)
搭建自己的RPC系统
workflow(搜狗开源的C++服务器引擎)
e.
****分布式
MIT 6.824中文教程(分布式)
(4)****
请教了别人,说是没必要看那么多,先看计网黑书和tcp卷2,再看mysql必知必会和redis设计实现,在在力扣刷stl的题,刷完看STL源码剖析
后续修订
总之,打好基础的前提下,再选一个方向深入学习,不要面面俱到,培训班的视频太浅了,多看cppreference,项目源码,国外公开课,经典书。
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
发现一个有料的网站哈:V2EX
(9)
(10)
(11)
(12)
或者测开?
(13)
遇到语言不对口的,也是可以考虑转语言的,主动引导面试管,让它提问你擅长的部分
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
当然还有网络编程的基础,不要全学,学必要的基础部分,就可以开始上手项目
(22)
(23)
(24)
(25)
(26)
(27)
罗列3个公开课的项目
6.824是分布式的,其他两个(cs144和6.081)据说比较万金油
cs144:计网
6.824:分布式
6.018:测试和集成
(28)测开还是后端某细分方向
(29)
(29)
总结:
(1)先写好简历,然后海投实习
(2)面试中查漏补缺
(3)背拓跋阿秀的C++面经
(4)面试的时候录屏录音,便于复盘
(5)但是现在没有项目....所以考虑要不要整一个项目,或者直接跟个cs144
(30)
(31)C++八股汇总(一)
40个面试题
C++夺命连环问_牛客网 (nowcoder.com)
防止链接丢失,内容粘贴到Ubuntu了?
Ubuntu Pastebin
(32)互联网路线分析
32 ~ 38为下面大佬的宣讲?
a. 客户端
不建议,需要被侵蚀,岗位较少,上限低(只是对后端返回信息进行渲染,只有个别大厂还在用)(但是进大厂相对容易,比如抖音剪映)
b. 测试
不建议,很多都是外包
c. 运维
Mysql等的测试
(33)春招时间
(34)
(35)
(36)架构 and 操作系统
(37)项目
(38)开源项目
(39)问了年包,估计30+的佬(大四手握多家大厂offer,ACM区域铜,211本,充足的开源项目经历),一些小问题
(40)
大概路径是没问题的,但是前辈建议多沉淀沉淀,打好基础,真正弄懂,刨根问底,而不是像培训班一样,半年花几百个小时就想上岗,后续只会很痛苦(没有5000个小时,10万,20万行代码的积累,真的不好干,后续上升空间也不大)
a. 408真的要打好基础,一遍不行就两遍,最好尽可能做到都手撕,而不是照抄
b. 不要贪快,弄懂是前提
c. 计划赶不上变化,真到实施时,也许只能在规定时间完成80%甚至50%的量,脚踏实地最重要
(41)
牛客总包40的佬,Go转C++的,给我的建议,虽然里面说的可能有误解(不可能超过大多数92✌的)
大二上依旧是打基础,大二寒假和大二下,基础完善后....再说吧...一天5小时自学要有,否则很难
(42)背好面经,当然这大半年,就一直要积累八股了,不是专门背八股,而是学计网,数据库,OS的过程,打好基础,到时自然水到渠成,轻松搞定八股,细节+深入也不怕,还有设计和架构
(43)一直以来,不论Google还是百度,腾讯云开发者社区的文章,质量都不错,以下一篇C++经验之谈,大厂offer全流程经验
双非 + 非科班 + C++ --> 美团,字节,阿里offer?
我是如何一步步拿到大厂offer的-腾讯云开发者社区-腾讯云 (tencent.com)
(为防止丢失,我将内容保存在Ubuntu?)
Ubuntu Pastebin
(44)编程指北C++八股,讲的不多,内容很少,将就看看吧
C++ 面试指北介绍 | 编程指北 (csguide.cn)
(45)C++,大二暑期上海实习 + 百度一面等面经和经历
【记录成长】大学时光已过半, 分享我的大二暑期实习经历-CSDN博客
(46)面试技巧 和 简单八股
八股良莠不齐,暂时只作汇总,等海投前1~3个月再仔细对比
面试c++开发岗位,这些都不知道的话,还面啥?(c/c++面试题及答案分析) - 知乎
(47)
在时间充裕的前提下,也可以选择同时主攻Java、C++、Go后端开发,反正后端组件这一块是共同的,这样基本上能覆盖所有公司和领域的后端开发岗位了。但个人觉得,只同时主攻Java和C++后端开发的性价比会更高,毕竟Go后端开发的业务岗,Java也能面进去。如果对云原生赛道不感兴趣,可以不用专门学习Go后端开发
作者:椒麻酸菜鱼
链接:【校招方向】C++输麻了,C++后端开发还能学吗?_牛客网
来源:牛客网
本文的观点也不是说webserver不好。尽管在现今形势下,普通的、没有自己优化的webserver已经不适合作为简历上的校招项目了。但webserver仍然是入门Linux系统调用、Linux多线程编程、网络编程的好项目,甚至可以说是必做的项目,有了webserver的基础,你才能学习更复杂的网络库和著名开源的服务器源码(例如Nginx),进而在它们的基础上往项目中融入你的个人思考
(48)
MIT6.824,CMU15-445可以考虑下,但是如果你要求职鸡架可能太不够;cpp的话,我看今年cpp很多进美团后端开发的都有做过15-445
作者:椒麻酸菜鱼
链接:【校招方向】C++输麻了,C++后端开发还能学吗?_牛客网
来源:牛客网
(49)
八股网站
小林coding:图解系统介绍 | 小林coding (xiaolincoding.com)阿秀笔记:目录 | 阿秀的学习笔记 (interviewguide.cn)javaguide:计算机网络核心知识点 | 二哥的Java进阶之路 (javabetter.cn)大厂面试题整理:InterviewGuide大厂面试真题Golang学习路线推荐
快速入门:Go by Example 中文版 (gobyexample-cn.github.io)Go 程序员面试笔试宝典 | Go 程序员面试笔试宝典 (golang.design)Go 语言设计与实现 | Go 语言设计与实现 (draveness.me)设计模式:Easy 搞定 Golang设计模式 (yuque.com)源码剖析:小徐先生1212的个人空间-小徐先生1212个人主页-哔哩哔哩视频 (bilibili.com)C++学习路线推荐
八股:基础语法-01-20 | 阿秀的学习笔记 (interviewguide.cn)C++全栈知识体系总览:导航地图 - ♥C++ 全栈知识体系 概览♥ | C++ 全栈知识体系 (stibel.icu)
webserver项目地址:GitHub - Tyler-Wong-Boy/TinyWebServer: :fire: Linux下C++轻量级Web服务器webserver八股:面试 | #webserver项目整理#_牛客博客 (nowcoder.net)笔试算法学习路线
参考文章:互联网大厂笔试攻略(算法/研发岗) - 知乎 (zhihu.com)笔试真题网站:题库 - CodeFun2000面试算法
LeetCode 剑指offer:*************************************************企业高频面试题:https://codetop.cc/home**********:*******************
作者:努力开摆的小鱼
链接:秋招总结 【后端开发】方向建议_牛客网
来源:牛客网
(50)牛客C++大佬的点评
C++11,有必要认真学一下,只是日常实习,而且不是大厂,项目也只是勉强够
(51)本9硕美
(1)C++11新特性
(2)设计模式
(3)大二日常实习,大三暑期实习,大四秋招春招
(4)作者非科班转码路径:
a. CSAPP(lab过一遍)
b. 6.S081(lab过一遍)
c. 施磊(SL)老师的C++高级语法课程 + muduo网络库(muduo写到简历)
d. C++和网络编程八股背熟
e. lc花一年刷了700题
日常实习面经_牛客网 (nowcoder.com)
(52)据某个C++大佬的说法,比较有价值的项目有
a. RPC框架,然后扩展新的功能()
b. muduo网络编程库
c. 基于跳表通过redis实现数据库
d. 6.824分布式
(53)较详细的秋招流程和面试考察内容,一些中肯的建议
计算机秋招指南_牛客网
note.baizx.cool
(54)以后走C++,后端 还是 QT,暂时是这两个想法,当然,想法是一直变的,会随着我接触到东西不同而改变
B站 程序员老廖?
咱先不管别的,先把基础这块搞好
(55)985大二拿到字节实习,Java,但是可以参考下方法?
自学java 大二上进入字节跳动!_牛客网
(56)C++混搭方向
(57)C++一些行情和建议
?C++开发这个,干了5年,没有后端卷,没有互联网卷,双休,965,工资是低一点,但这也是我想要的生活,时薪大差不差(不加班不出差,正是我想要的!)
C++就业面确实更广,更不容易事业,也没有35危机,但是薪资肯定不如Java选互联网,大厂是去不了的。
(58)数据库方向
a.
b.
(59)WebServer 之后第二个项目考虑
?群友给的顺序,和上面知乎的给的,不太一样?
?具体顺序以后用到再研究?
还有人建议,6.824 可以用 mini lsm 代替
而且上面大部分项目都是 infra 的,非常的卷......
(60)牛客 -- 超全面经
2022 届找 C++ 实习总结——我的一些经验分享_牛客网 (nowcoder.com)
?计划2.0
大二上寒假前会确定,2024-2-1之前完成修订