我的编程生活

来源:互联网 发布:网络dns异常什么意思 编辑:程序博客网 时间:2024/06/09 14:23

 【在大学写过不少的文章,最值得留恋的三篇写给科协的关于技术的文章】【二】 

【写于大三第一学期,这篇文章里的一些观念我现在自己都觉得不太正确,不过这篇文章里留下了以前很多的回忆。】

 

题记:《数码IT》编辑部的负责人说让我给大一新生写点东西吧。收到短信时,我想我能写什么呢?第一,我也只是大三的学生,也没比大一的多多少阅历,万一写错了,或误人子弟,那就太不应该了;第二,虽然平时话挺多,但真要写点什么,还真不知如何下笔;第三,曾经虽然也在《数码IT》上写过一些文章,但都是一厢情愿的写一些技术上的东西,有些大一能看懂的好像以前都写过了,总不能一篇文章改改又发表上去吧。思前想后,还真有个理由让我很想对大一新生聊聊,就是我的C语言班马上要开班了,还有在科协做事两年,也常有些同学,尤其是一些新生或在编程道路上比较迷茫的找我聊天,问我一些关于编程的方法、方向等问题。曾经也写过一篇《我该学点什么?》,说了一下我对编程这条路的一些浅陋的见解。我觉得也许可以老话重提,再谈谈我对编程的一些看法。这次得有些不同,就从我自身出发说说吧。因为是个人看法,所以难免有些错误,或不对的地方,欢迎大家批评,也可以找我交流,谢谢。

 

给自己一个氛围与一股压力

应该说当时加入科协是非常幸运的事,那在科协我到底得到了什么?是技术、是人脉、是能力的培养?都有吧,但不是最重要的。我觉得科协给了我一个氛围、一股压力。当时的技术部人才很多,而我虽然之前已接触过电脑三年,但根本不懂编程。当时部里的大家的竞争意识也很强,所以难免有很大的压力。但就是这股压力,迫使我在很短的时间里学完C语言,并开始学习其他相关的编程方面的东西。不过这里也应该提醒一下,要调整好课程和兴趣的关系,合理利用时间,不要顾此失彼。可能有些人说我没有加入科协啊,那又有什么关系,自己对自己严格要求就行了。

找一位对手与搭档

在技术学习的路途上,可能会因为学到一点东西就以为比别人强了,开始飘飘然了,这时你需要的是一位对手。找一个水平和你差不多或比你好一点的,不停的你追我赶,形成良性竞争,相互促进。另一个相反的情况是编程在很多时候是一种枯燥又辛苦的事,可能随时都会让你觉得很无助,很想放弃,这时你需要的是一位搭档。一个可以在一起编程,相互帮助、相互鼓励,在孤单无助的时候,有个搭档是个不错的选择。

我最好的对手与搭档是曾在科协技术部一起奋斗的朋友,他也是我的同班同学,所以我们常在一起交流,当我想放弃继续学一门技术、或放弃写一段代码时,他会鼓励,或是挖苦、嘲笑等各种方式激励我不要放弃。当然我也常回报他。就这样走过了两年,我真的非常感谢他。

培养自学能力

       我觉得学习编程最重要的还是自学。先把老师教的基础课程学好,然后学会自己去学习那些感兴趣的技术。学校不会教你所有的技术,也许有很多你想学的东西是学校不教的,很多即使教,也只是带个头,比如C语言、C++语言等,学完课程也只是入了个门,你如果想做东西,还是要学很多东西的。

       那怎样培养编程的自学能力呢?我谈谈我个人的学习方法吧(不一定都适合)。一般我买书喜欢买字典式和经典的书。

字典式就是那种特别厚,几乎包含了所有内容的书。我觉得编程不是看一边书就能学会的,还需要大量的实践。而把某一种语言的所有东西都先看一边,我觉得没有任何意思,看了还不是都忘了。我觉得应该写看一些基本的,然后在写程序的过程中不停的查书,在查的过程中学会。而且一种语言一般有个很大的库,很多东西是不用记的,用时查就可以了。所以买一本字典式的,可以一直用到你不再用这个技术为止。

经典的书,就是那些大师级人物的作品、或是经过多年使用,是所有人一致评定的经典之作。为什么要看?这个应该不用作解释了吧。经典之作总是有他可取之处的,不然不会流行这么多年。大师级的那一定是有独特见解的内容。所以这些书除了看,还能留作收藏。

“一路走来,始终如一。”

       这句话是我那位搭档说的,我引用一下。

       开始你应该什么都懂,什么都可以学点,当了解到自己感兴趣的方向,找到一条想走下去的编程之路时,那就一心一意走下去吧。大学只有四年,要想学会好几门语言很容易,但要精通一门,那就很难了。就拿C++来说吧,学完语法就很难。就算学完了,STL会吗?其中的容器、算法、迭代器会用吗?有没有看过《Effective C++》和《More Effective C++》、《C++标准》等C++必读书?即使你全看了,你也写不了程序。想写一个像样的程序,还要学数据结构、算法设计。如果你要在一个平台上写程序,比如你要写一个WINDOWS程序,你必须要学WINDOWSAPI,当然,你也可以学MFC(其实是API的封装),如果要写LINUX程序,你要学LINUXAPI(因为开源的缘故,可能要学很多类库)。如果想写出优秀的代码,完美的程序,你还得看关于编程思想、软件工程等书籍。如果你想用C++做游戏,那你还得学其他的更多东西。所以说,“会”很容易,而“通”却很难。当然,也不用觉得太难,起码我们也不指望在大学就成为一门学科的大师,只要能在该领域有所成就就可以了。说这么多话,无非就是想说明一点,想要在大学在技术上有些成就,那就要:一路走来,始终如一。

 

       以上只是我个人在大学两年来的一些总结,希望能给在编程上还有些迷茫的大一新生一些提示。

       最后,预祝你们在自己的编程道路上走得精彩!

原创粉丝点击