真羡慕你有个能和你一起学习的老爸!
我觉得学习一个两个可以进行结合的,毕竟,看视频不是任何时候都可以看的,但是文档,你可以任何时候都可以看的!
好比你工作谈恋爱,难道只工作不可以同时进行谈恋爱吗?
你爸爸看文当,学习c,可以比葫芦画瓢,跟着一步一步的来,在速度和成果上可能会更加的快,你看文档,可以自己的思考,这样会更加的有效率的!
C++技术栈
1、 c/c++语言基础,面向对象, stl等
const的用法、引用的用法、#define用法、构造函数、析构函数、拷贝构造、new、delete 和 malloc、free 的区别、继承、虚继承、钻石继承问题、同名覆盖问题、虚函数表、虚指针、虚函数、纯虚函数、接口、多态、重写、重载、函数重载、运算符重载、流类库和文件
2、 linux操作系统
这个不用多说,必须学习的
3 数据结构与算法
比如线性表:链表,队列,栈
b)树:二叉树,红黑树,字典树,线段树等
c)图:图搜索,dijkstra算法,最小生成树
d)递归:回溯
e)排序:冒泡,插入,希尔,归并,快排,堆排序,桶排序
4 、网络编程(包括socket, i/o模型,多线程 多进程等)
如果你零基础的话,可以参考这个教程,我之前都给总结好了
C++程序员入门级零基础学习教程5 、常用的开源服务器(nginx, redis, memcache等),熟悉源代码,能做定制开发
6 、关系型数据库,比如mysql , oracle
7 、nosql非关系型数据库,比如(redis, mongdb等)
8 、脚本语,比如(shell, lua. python
9 、tcp/ udp, http, 音视频相关rtsp,rtp.rtcp, rtmp等网络协议相关
10、如果用c/c++开发服务器程序,有时间还是要学习一下go语言的
当然也可以根据这个脑图进行开发
首先我推荐入门级书籍
- 《Accelerated C++》
- 《C++ Primer》(大而全)
- 《The C++ Programming Language》(C++之父 Bjarne Stroustrup 所著)
你可以不算全学习,但可以选择其中一个,零基础的话可以从《C++ Primer》这本书入门。
这本书是很多大牛强推的。可能是是对你影响最大的C++书籍。
1、项目实战
学习任何一门编程语言,都离不开项目实战。没有实现,等于无稽之谈!
阅读编程书籍学习效率将大打折扣。
很多初学者或者是实习生学习可以不到3个月,就可以写点小程序。因为他找到了代码的乐趣和方法
《Effective C++》
一言概括,就是帮助你快速习得一些 C++ 里正确的姿势。 举个例子
一个开源的TinyHttpd项目,麻雀虽小,五脏俱全。我们都知道Tiny 为极小的,Http 为应用层协议,当我们输入网址回车的那一刻就看到页面上想看到的内容,这里就涉及到HTTP协议。
这个项目可以让你清楚的了解 Http 请求头,响应头等细节信息,同时代码中使用多进程的方式对 Http 进行了实现。
最后你要熟悉目前环境下一些云原生的开发,
包括开发摄像头接入组件,onvif接入、rtsp接入;
另外ffmpeg,以及MFCwindows界面开发,毕竟现在C++可以结合AI做一些大规模语言模型的一些支持,毕竟目前ACGI字当前最流行的一门技术了
如果你还不了解ACGI,如果你想知道更多的AI方面的知识,这里有「知乎知学堂」和「AGI课堂」联动,推出的【程序员的AI大模型进阶之旅】公开课,一共2天的课程,别看仅仅两天的课程,我们可以学到利用AI拆解业务,利用用最优方案独立开发 AI 产品的能力,对自己以后的工作效率有很大的提升,全方位的帮大家提升认知和AI技术能力,成为第一批AI布道师!
毕竟免费,毕竟AGI永远都是最新的主流技术了哈!
个人觉得,多看多写多练习才是王道!
建议
1、多看一下别人写的代码,会养成一个好的编程习惯。可以思考一下不同编码的设计逻辑
2、看了代码,就要写代码,,可以跟他们相同。这是了解别人的代码的设计风格,也了解代码的执行过程,在敲代码的时候,你会发现一些很神奇的错误,比如你的很多英文都会输入错误,然后你就开始怀疑人生了,嘎嘎
3、学习C++,从一开始就慢慢体会代码重复利用的快乐,找到c++的田园,你会发现,越来越带劲,那个时候,你距离月入5万的目标已经不远了
加油,奥利给! |