1
CodeTracker OP 感谢各位大佬能抽空看我的问题
|
2
CodeTracker OP 顺便还想问一下各位 C++后端的老哥怎么规划自己的 5-10 年职业生涯,做计划大概做到几年的比较合适呢?
|
3
Buges 2022-06-09 21:34:30 +08:00 via Android
先打好基础吧,那一堆培训班生产的垃圾没什么好看的。
|
4
AX5N 2022-06-09 21:35:27 +08:00
除了那个 7 个月(虽然不知道为什么要 7 个月)的,其余所有加起来也没多少天,你就对着你这个计划学吧,规定的时间内能学完很厉害了(执行力惊人),不管有没有用,反正也没多少天,学了不亏。
|
5
jones2000 2022-06-09 21:37:11 +08:00
学好数理化 走遍天下都不怕。
|
6
CodeTracker OP |
7
Buges 2022-06-09 22:13:38 +08:00 via Android 1
@CodeTracker 尝试写一些具体项目,并在过程中遇到某个具体领域的问题、学习这个具体领域就是打基础的过程,而不是列一堆你并不知道具体是干嘛的课程。
培训班的课程通常来说是针对快速上岗干活和应付面试官的,学习阶段应以英文原版书和官方文档为主,不要碰这些东西。知其所以然才是最重要的,不要延续做题家应付考试的那一套方法论。 |
8
hhjuteman 2022-06-10 10:47:47 +08:00 3
我不太确定是否能给出正确的建议,因为我是做流媒体前端和服务端的,我也不太确定这些书和培训视屏是否真的有作用。
总体上来说,C++ 后端找到工作有比较核心 3 点吧 1. 刷 leetcode 算法的水平 2. C++的水平 3. 网络编程的水平 首先说说刷算法题的问题吧: 我的个人建议是每天都刷 2 题,周末就不刷了,稍微总结一下做题思路和题型。保证自己找工作的时候差不多有个 300 题左右的题量,能吃透题型,差不多行了,算法相关的笔试面试基本上也不会被刷。 C++的水平: 我要说的是,我正儿八经看完的 C++的书就只有 4 本 《 effective c++》 《 effective morden c++》 《 c++ concurrency in action 》 《 c++ templates 》 我连 c++ primer 之类的都没看过,刚开始入门的话,是结合一些开源项目,例如 tdesktop ,beast 之类的去看的。遇到不懂的就翻 c++ reference 。然后自己写点东西,尝试模仿这些项目的写法,然后阅读了 effective 的两本书。后面发现了 cpp coreguide line 这种好东西,以及 cppcon 。在长期阅读开源代码以及自己写代码潜移默化的过程中不知不觉的就懂了大部分 c++语法以及部分模版的用法,后来又想系统学习下模版,就看了《 c++ templates 》。 cppcon 早年间那几届,有几个对我来说是惊雷般的演讲,例如 Mike Action 的 dod 相关的演讲。我的建议是 c++到了中级水平,多关注 cppcon ,遇到不懂的,多看看 isocpp 草案的标准定义。 有关于 stl ,我也没有看过《 STL 源码剖析》这种比较出名的书,大部分的知识来自于一个叫做 eastl 的开源项目。 网络编程的: 书的话我就只看过三本 《 tcp/ip 详解》 《 unix 网络编程》 《 unix 环境高级编程》 我个人认为,asio 是所有 c++开发都应该了解的一个库,如果 c++需要一个网络标准库,那只能是 asio 。我个人建议在你的 7 个月的实验项目中尝试使用 asio ,思考 asio 到底给你提供了什么,思考一下 asio 中的异步 io 和 epoll ,iouring 之间的模式。asio 里面有一些 cpp 草案相关的内容,你也可以尝试。 另外 nginx 也是绕不过去的,您应该在 nginx 好好下一番功夫,同时关注 envoy 这个项目。 有关与存储缓存等内容 说实话,我刚开始上班的时候也搞过网络编程,具体也就是一些网关,数据过滤相关的工作。没用到过 redis ,mysql 之类的。后面搞流媒体,同样也不在业务范围内。所以我虽然看过 redis 源码,但是长期不怎么使用也只记得个大概了,这方面有的后端面试也会考,看你自己啰。 只是我自己的经验,不一定适用于你,希望有点帮助。 |
9
harryhao 2022-06-10 11:50:14 +08:00
上来就看源码有点迷惑,很多内容是重复的,而且视频的话价值不高。不要想着大而全,打好基础后,专攻一个方向就好了,有余力再学其它的。
|
10
xiaochao666 2022-06-10 13:14:27 +08:00 via Android
看着很多,实际上确很乱,没有主次,看不出来你想学什么,没有目标。还有就是时间太精确了,你会有很大对失败感和紧张感的,一般可以以两周或者月来大概计算。
我理解你的那种突然有了很多自由支配但时间,还有对计算机领域的热爱或者学习的激情,但是人不是机器,希望你再好好想想,规划一下,你这个还是太乱了。 直言,没有恶意,欢迎交流。 |
11
fpure 2022-06-10 21:29:32 +08:00
以我的经验来讲,别光看干书,要多写代码,先写代码,再带着实际问题去看书,看完一个知识点就继续去写代码
|
12
CodeTracker OP @hhjuteman 前辈好厉害,谢谢您的指点。我参考一下您的回答再去好好思考一下自己的规划,毕竟再学一年半左右就要面临招聘了。
|
13
CodeTracker OP @hhjuteman 前辈好厉害,十分感谢您花这么多时间给我提供意见。我参考一下您的回答再去好好思考一下自己的规划,毕竟再学一年半左右就要面临招聘了,不希望自己路走偏了。
|
14
CodeTracker OP @xiaochao666 主体的话就是 C++后端开发,QT 是因为暑假是去一家客户端开发的岗位,就加了一个 qt 的学习安排。我主要就是围绕 Linux 网络多线程编程,C++ 语法相关,具体项目,算法与数据结构,数据库。我的疑问就是我这里不知道哪些应该砍哪些应该加。不希望没有主次的瞎学一通。 感谢老哥抽空回复我。
|
15
CodeTracker OP @fpure ok ,谢谢您的意见哈
|
16
CodeTracker OP v2 上网友真的水平好强,自愧不如了。
|
17
RanShunliu 2023-09-10 19:12:23 +08:00
前辈,我是刚大二的,目前情况和你有些类似
|
18
RanShunliu 2023-09-10 19:20:06 +08:00
@RanShunliu
211 本,刚大二,这一年的学习计划,争取看完下列书目,每个书目有可能的话,会配合视频学习,还有从网上找的 C++项目 (目前还是先打好基础吧,和 OP 一样,我也喜欢跟培训班的课,目前跟了《 Essential C++》,黑马 C++的 300 个视频,力扣 100 道中等题,Mysql 跟着黑马的学到索引优化,大概 100 多个视频,Linux 本学期正在学,同时准备开始看 Effective C++,还有鸟哥的 Linux 私房菜,到时再从项目里找点对口的学一下,最迟大二上结束前,就会确定 C++具体方向) |
19
RanShunliu 2023-09-10 19:20:32 +08:00
( 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 泛型编程.... |
20
RanShunliu 2023-09-10 19:20:52 +08:00
( 2 )项目
建议“项目驱动”的学习方式 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 源码剖析 |
21
RanShunliu 2023-09-10 19:21:56 +08:00
目前也在想着,这里面哪些项目砍掉,因为方向还没完全确定,这学期先学了 Linux 和 Effective C++先,还有学校课程,还有四六级
|