写下自己的经验希望能给想学习网络编程的又不知道从何入手的人一点参考。
前言:
这篇博文是我自己在学习linux下C++网络编程之后写下的,主要是说了自己对linux下C++网络编程的一些理解。
第一:学习C++网络编程需要看什么书:
1.
你需要一本C++的入门书籍,什么入门书籍好呢?很多,自己百度搜一下找些PDF看看看也行。在熟悉了C++的语法和一些简单的用法,你就需要下面这两本书:C++ Primer Plus和C++ Primer。这两本书先看前者,再看后者。网上也有很多关于这两本书的描述了,我就不罗嗦了。至于读到什么程度,我个人的建议是,不用全部都记住,你只需要知道个大概就行了,后面用到的时候再回来查。
2.
在有了一定基础之后,你需要安装一个linux系统(新手建议用Ubuntu,我的也是Ubuntu),网上有很多安装linux的教程。你可以配置差点的可以装双系统,配置好的可以用虚拟机。然后,找linux的入门入籍,在这个阶段,你需要做的事就是了解linux,不要操之过急。找一本书,读一读linux的发展史,了解一下linux的常用命令和快捷键,对着你的linux边看边实战。
3.
在对linux的命令(find, cd等等)有了一定了解之后,你就要搭建你的编程的环境啦,我使用的是vim+gcc。有的linux镜像会自动帮你安装好vim和gcc,如果没有你就要自己下载vim啦(在这里可以找到官方的:
http://www.vim.org/download.php,嫌麻烦?那就直接在终端下使用:
sudo apt-get install vim
),然后下载gcc和g++(官方王章:
http://gcc.gnu.org/, 还是嫌麻烦?那就用命令
sudo apt-get install gcc g++
)
4.
接下来这一阶段可以说是比较苦逼的了,就是把你的vim搭建成一个炫酷的IDE,
http://www.zhihu.com/question/23590572/answer/59054572这个我写的答案,虽然不是很详细,照着上面的插件百度一下,自己折腾一下就行了(T_T我自己为此耗费了整整四天),关于vim环境的搭建,如果遇到了可以看看我的相关博文(给自己打个广告都不给啊0-0)
5.
等你把IDE和编译器都下载好了,就到了厚积薄发的阶段啦。个人推荐你需要按顺序阅读以下书籍,同时你需要一个小项目练练手,边看书边实践,特别是在看完了第三本(深入探索C++对象模型)之后。
a)Unix环境高级编程
b)Unix网络编程
c)深入探索C++对象模型1~4章
d)Effective C++
e)More Effective C++
需要注意的是你不需要完全掌握第一本和第二本,你只需要在略读之后,边实践边查询就行了。
6.
如果是服务器端编程,你还需要了解一下数据库的相关知识,这里我推荐学mysql,轻量级数据库,易上手也免费。
7.
然后你就入门了,没错。。。你入门了。。。。
第二:还有什么知识需要学习?
在学习编程的过程中,你还需要学习数据结构,算法(推荐书籍《算法导论》《算法设计与分析基础》),计算机组成原理
,计算机网络,操作系统。这些知识你都可以在大学的课程中获取,一般都会开设相关课程。
如果还想更进一步,可以看看陈硕大大的博文:
http://blog.csdn.net/solstice/article/details/6527585