书是有了,但电脑的问题却日益严重,去学生活动中心电脑室上网也不是个长久之计,有时候去晚了根本没位置,而且距离宿舍也不近,来回挺折腾的。而买新的电脑,动辄就是几千块,我一个穷小子实在负担不起,也开不了口向家里要。后来,我在淘宝上淘到了一个二手笔记本电脑,五百多块拿下了,虽然慢的要命,但好过没有。于是我开始在这台电脑上正式开启了我的C/C++编程之路。
大一的下学期,还有一件事,就是计算机的一门基础课:计算机网络。
这门课和C语言是同一个老师,同样的PPT走马观花,同样的让人昏昏欲睡。
但是偶然一次路过,发现隔壁班的计算机网络是当初教计算机二级的老师在上课,我和两个小伙伴就一起溜进去蹭课,这一蹭不要紧,一下就上了瘾。
这位老师风格独立,根本不用学校发的教材,而是自己编写了一套PPT,从最底层的原理讲起,从通信的编码校验,到局域网的802.3、802.4、802.5等技术演进,用生动有趣到生活实例告诉我们什么是CSMA/CD,听得我们如痴如醉。我现在写的很多故事性的文章,一定程度上都有这位老师的影响。
在我们几个的口口相传下,我们班在上计算机网络课时,门可罗雀,而隔壁班人却越来越多,不知道我们的计算机网络老师看到后心里有何感想。
大一这一年,是迷茫中寻找方向的一年。
大二买来的二手电脑终究经不起我的折腾,才用了半年左右就出现各种毛病。大二上学期的国庆节回到老家,跟奶奶聊起了学校的经历和日常。奶奶听后二话没说,拿出了四千块钱给我,让我去买电脑。我是又喜又愧,喜的是可以换新电脑了,愧的是我知道这四千块钱对她来说有多么不容易。奶奶说,等我以后挣钱了再还她就是了,可快十年过去了,我还没还,奶奶却不记得这事了。
言归正传,换上了新的电脑,得更努力的学习才行。
大二这一年,加入了学校一个研究所,跟着老师还有师兄师姐们一起做项目,这一年是收获的一年。
进入研究所的第一件事,就是一个跟网络数据包打交道的项目。
印象最深的是,第一次看到了网络数据包长的是什么样的。之前学计算机网络时,总把数据包挂在嘴边,什么TCP/IP几层协议,张口就来,却连真正的数据包都没见过。
学习计算机网络,一定得抓个包来看看,看看课本里的一层层协议,一个个字段,在网络中真实的样子。这里推荐两个抓包软件:
专业人士:wireshark
如果是新手小白,Wireshark纯英文版用起来有一定门槛,推荐一个国产软件:
科来网络分析系统
中文界面操作起来更简便易懂。
这段日子,是编程能力快速提升的时期,之前都是自己跟着书瞎练习,现在有了过来人指导,避免了很多弯路。
记得研究所老师说过一句话:什么时候觉得自己编程能力入门了?就是当你能够独自编写超过1万行代码软件的时候。
进入研究所之前,自己写的软件,每个工程也就一两千行代码的水平。而接触真实的项目后,一下就被十几万行代码的巨大工程震撼到了,由衷的佩服师兄们是怎么完成这么浩大的工程的。
那时候,研究所项目很多都是VC++开发,虽然经过自学有了C++的基础,但一下接触VC++,还是来的有点猛。于是乎,开始各种找资料补课学习。
后来在网上找到了一个叫孙鑫老师的《深入VC++详解》的视频,共计二十堂课,讲的全是干货,真的是深入浅出,很快靠着这个视频算是入了门,终于初步具备开发项目的能力。
这个时期,跟着几本VC++实战教程,做了几个软件项目,不得不说,实在比VFP难多了。
学了网络编程,做了一个网络聊天软件,在寝室局域网中用来跟室友聊天。
为学校的信息安全比赛,开发了一个监控软件,可以同时监控多个人的电脑桌面。
还写了一个Web服务器,第一次独自开发超过了3万行代码。
大二这一年,是找到方向后快速成长的一年。
大三经过大二一年的学习,算是从计算机小白,变成了一个有一些编程能力的“老司机”。