如果您是非计算机相关专业零基础兄弟,在学习Linux编程基础之前,建议先学习计算机基础、Linux操作系统基础知识和计算机网络基础知识。
计算机基础知识包括了很多常识性的内容,学了不一定有用,但是如果对一些基本常识不了解,可能会闹笑话。
我们学习的目标是成为C/C++程序员,不是Linux系统管理员,也不是网络管理员。作为一个程序员,只需要了解Linux操作系统和计算机网络的基础知识就可以了,不需要深入研究它们的原理。大家不要去买这两方面书籍,建议大家去买一个云服务器,腾讯、华为、阿里的都可以,一年不超过100元,云服务器对学习非常有帮助,远远超过任何书籍。
最好的学习方法是到网上找免费的视频教程,例如B站、腾讯课堂、CSDN学院等,这些很基础的知识网上非常多。
总的来说,以学习概念和扩充知识面为主,不要深入理论,不要学习算法,应用为王。
一、计算机基础知识的学习
1)计算机历史。
2)计算机的应用领域。
3)二进制、十进制、十六进制的基本概念。
4)计算机总线、外部设备。
5)计算机软件、操作系统基本概念。
6)学习时间不超过20小时。
7)推荐视频 <https://www.bilibili.com/video/av80537766>;
二、Linux操作系统的学习内容
1)Linux系统简介。
2)Linux系统的安装。
3)远程登录命令(以ssh为主,了解telnet)。
4)Linux常用命令,注意,Linux的命令上千个,常用的约50个,能看懂多少就多少,看不懂的就算了,与程序员相关的Linux命令我会在教程中提到。
5)Linux用户和组的管理。
6)Linux文件系统。
7)Shell基础,注意,Shell可以很复杂,Shell脚本也是一种编程语言,但是,我们是C/C++程序员,一般不会采用Shell编写脚本程序,运维人员使用Shell脚本比较多。
8)Linux进程方面的基础知识。
9)Linux防火墙配置。
10)学习的时间不必超过50小时。
11)推荐视频 <https://www.bilibili.com/video/av18156598>;
三、计算机网络的学习内容
1)计算机网络的基本概念。
2)局域网、广域网和互联网。
3)ISO参考模型。
4)TCP协议(粗略的了解一下UDP)。
5)IP地址、网关、子网掩码、DHCP协议。
6)万维网和HTTP和HTTPS协议。
7)电子邮件和SMTP 协议。
8)文件传输协议FTP。
9)远程登录协议(以ssh为主,了解telnet)。
10)学习的时间不必超过30小时。
11)推荐视频 <https://www.bilibili.com/video/av70228743>; 或 <https://www.bilibili.com/video/av9876107>;
四、学习策略
以学习概念和扩充知识面为主,不要深入理论,不要学习算法,应用为王。
五、版权声明
C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。
来源:C语言技术网(www.freecplus.net)
作者:码农有道
如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发我的文章,谢谢!!!
如果文章有错别字,或者内容有错误,或其他的建议和意见,请您留言指正,非常感谢!!!
来源:oschina
链接:https://my.oschina.net/u/4335918/blog/4253763