我这几年-----对于初学者的几点建议

 

朋友要我写一篇如何成为一名优秀Dnet程序员的文章,对于这个题目一直无从下笔,个人认为自己目前不具备写这个题目的能力。关于这类的文章在网上搜索一下,应该能找到很多,再好多书里也都有介绍,譬如《java夜未眠》。首先声明我不是所谓的牛人,也没有什么资深的经历。我只能根据自己这几年的历程给大家一点小小的建议。如果能对您有所帮助,深感欣慰。

 

不要幻想自己已经学得很好

 

 我是那种不热爱学习的人,但在学校为了拿到奖学金度日,还是努力学习各门课程,当时觉得自己的专业课学的还可以,自信满满。到了大三,老师召集了一帮不准备考研的学生出来跟他做项目。项目是用CLinux环境下开发,好多东西都没有学过,需要重新学,想着自己C学得很不错,就只集中精力学习Linux开发环境,但在实际项目中越来越觉得C语言能力的不足,最后还是拿起课本重头好好看了几遍。

 

不要认为在学校里学的没用

   刚参加工作觉得在学校里学的能用上的寥寥无几。不过随着时间的推移,发现在学校里学的还是很有用的,在学校里学的是基础,工作中需要根据这些基础中的某个点继续深入学习,有时候好多知识都是触类旁通的,学了一个后再学另外一个就相当快。记得我们兼职项目大概做了4个多月,项目基本完成后老板留下来我们五个人继续和他合作(当时一共15人)。一是维护已经完成的系统,二是根据需要开发一些新的网站,当时需要用到php+mysql开发,这些以前都没接触过。不过当一门语言用的差不多的时候,学其它的语言之需要学她的语法句法以及现有的库函数就行了。记得找了一本php的入门书籍,在网上下了一些php的源代码例子,在第一周我们几个就已经开发一些简单的小模块了。后来也证明正是在学校时对基础专业课程掌握得还不错,工作后学起东西来就特外的得心应手,掌握得也比较快。大概就是因为自己的C/C++基础比较好,后来学起来其他语言来感觉完全不费力,都能很快应用。

 

培养兴趣,保持旺盛的求知欲

   兴趣是最好的老师。如果决定要做程序员,那就培养自己这方面的兴趣。把程序设计当成兴趣可以让你学得更快乐,学习效果自然会更好。即使在很苦闷的环境中,要学会调节你的心情,把它当成是兴趣,而非苦差事。记得开始做兼职的那一段其实也挺苦的,外天要上课,晚上从7点到10点半要去公司上班,开始有好多东西不熟悉,都需要找时间来学习。刚开始做程序的时候做得很慢,有时候一个晚上只能做一个小函数,晚上从公司回来后还要查资料,考虑今天的程序还有那些没完成,明天的程序要如何写…,那一段确实挺累的,晚上在床上一趟5分钟不到就能睡着,并且有时候晚上做梦还在想着写程序。不过那一段确实兴趣很高,当时我们寝室有我们三个在那个公司做兼职,大家虽然累,但是每天都兴致勃勃地上课,上班。

 

积累

       大家都知道积少成多的道理,那么在平时的学习、工作、生活中,要善于思考,注意积累,我喜欢每天把自己在这一天所学到的东西记录在笔记本上或者放到自己的电子论坛中。把所遇到的难题以及如何解决的方法都详细记录下来。毕竟有些东西是很容易忘记的,有时候我们遇到的问题在几个星期或者几个月后会再次遇到,并且我们已经记不清楚当时如何解决的,那么这时候笔记就派上用场了。另外每天记录笔记可以使自己觉得自己每天都在进步,那种感觉确实很棒。如果对于一些网站上的内容太多的话,我建议用论坛的方式也不错,把自己认为浏览到的比较好的网页保存下来,对自己来说以后也是一种财富。 

 

领悟,善于总结

 学东西要善于思考,在平时项目中要注意多总结,做到能够举一反三,有时候并不是说你做很多项目和读很多书就一定能增长很多知识。重要的是你在做项目或看书过程中真正学到什么,而不是泛泛的做了一个项目又一个项目,看了一本书又一本书,到最后真正提高不大。我始终觉得人的悟性在学习当中是最重要的。在平时的项目中,最好让自己站在一个更高的层次,考虑如果你出于那个角色将会如何处理所遇到的问题,来和现在的情况进行比较,学习人家的长处。作完项目后要回头考虑考虑,这个项目和上个项目有哪些不同,在这个项目中学到了什么东西,过程中存在哪些不足,如何在下个项目中来避免这种情况。总之,平时多总结在工作学习中才能积累更多知识。

 

外语

       我觉得外语目前对于IT行业是非常重要的,毕竟最新的东西还是在国外,如果想看到第一手的资料,那就看国外的原始资料。毕竟经过翻译的文章有时候并不能完全明了当时作者的意图。反正我外语很烂,过年后来北京找工作,当时有好多很好的机会,不过都是因为外语不行而放弃了。现在只好亡羊补牢了。

 

自学能力

       其实不管干什么,自学能力都是相当重要的。我不是那种自学能力很强的人,为了培养自己的自学能力,平时遇到的问题都先尽量自己查资料解决。真不行了再请教别人。另外在网上也先不要轻易提问,有可能你想问的问题别人已经问过,并且已经有人解答了。先搜索一下,确定是新问题后再提问,把问题描述清楚,这样方便别人解答。

 

没有对错,只有合适不合适

       在刚开始工作做项目的时候,所做的项目都努力按照软件工程的方法去做,尽量让自己更规范化。后来随着对软件工程的理解,在带项目过程中就不在那么一板一眼的按照书上的走了,只需要按照他们的那种思想,根据自己的需要和实际情况确定项目开发步骤,最终把项目完成就行了,有时候严格按照书上走的结果并不是很好,毕竟书上只是前人对于所遇到的情况的总体概括总结,并没有考虑特殊情况,我们项目过程中往往会遇到一些特殊情况。古人说得好“尽信书不如无书”,所以在实际项目中根据自己的需要和实际情况来开发项目,只要把项目做好就行,没有什么真正的对错,只有做的合适不合适,可以考虑如何使所做的工作更能适合当前的具体环境。

 

所有的经历都是一种财富

       有时候常常听到一些朋友抱怨自己所在的公司开发太不正规了,工作中用的语言不是自己喜欢的语言了等等。其实我刚开始也有这个想法,在学校做兼职的时候一直用C,PHP,最后自己看了一些J2EE的东西。本来想着毕业后要到北京、上海这一类的大城市,由于种种原因最后还是留在了郑州,开始的时候用Asp,那时候老是觉得Asp太简单了,没有什么内涵,也老是向朋友抱怨,最后朋友说了一句话我觉得很有道理,他说“语言没有贵贱之分,语言不是我们要掌握的根本,我们要掌握的是运用语言的能力和思想”。最后沉下心去,在工作中还是能领会到很多东西的。(当然好的环境可能领悟的更多),当我们没有办法去改变环境的时候,那么就要学会接受环境,我一直都这么认为,所有的经历都是一种财富,所以要拒绝浮躁,学会享受经历。(呵呵,有点阿Q了)

 

思想重于技能,提高编程素质

       看到一篇关于程序员之道的文章,觉得写得很不错,其中讲的道我理解为就是思想,是解决问题的能力。觉得当代的程序员还是有很多很浮躁的(当然我也很浮躁),有时候觉得自己看了一门语言,按照书作了几个例子,就觉得自己已经掌握了这门语言了。记得去年我在招人的时候,当时需要招聘asp.net的程序员,有的已经用asp.net作了几个项目了,可是被问到继承,虚函数,抽象函数,多态等面向对象的东西的时候,却一个都回答不出来。所以学习语言要静下心来学习它里面的思想。在平时的编程过程中,要注意自己程序的结构以及可读性,提高自己的编程素质。

 

      

结束

 

 反正我认为学习一个东西最好的是:兴趣+努力+总结。罗嗦了这么多希望能对您有所帮组。
posted @ 2006-06-26 00:21  雨人(ralpher)  阅读(338)  评论(2编辑  收藏  举报