一切让代码行数说话

 一切让代码行数说话

转自 http://blog.csdn.net/sxhelijian/article/details/23993911
程序设计是一门艺术,这门艺术只有通过实践才能掌握。检验计算机技术学习成果的标准是实践,我们对此寄予厚望。只有代码量达到足够多时,量变引起质变,才能够有机会见识到足够美丽的风景,水平才能真正提高。有业内人士描述:当你写过一百行代码的时候,对编程有了一个朦胧、感性的认识;当你编码的行数达到一千的时候,差不多掌握了编程的基本结构;当你写过一万行代码的时候,可以做自己喜欢的小玩意儿了;超过了十万行代码的时候,你会对自己编码能力充满自信。
  学计算机的你要去求职了。面试官很忙,要用一个简单的指标代表你的水平,说出你在大学编过的代码行数。这是一个让人服气的指标,李开复的建议是,四年写完十万行代码。
  在编程思想建立起来之前,足量的实践必须坚决贯彻。程序设计的实践,就是让学到的知识,转换为可见的代码。在我的教学实践中,大一的学生,一年的C++代码行数平均可以达到一万行左右。到了这个平均数的同学,即使随后的学习进程会有小的停顿,但任何时候想要回归,都有资本再次上路。为了达到这个代码行数,跟我的学生要付出不少精力,课外有很多的时间得花在机房里,有时还为找不到机位而发愁。我曾经教过的学生和我讲,大一跟着我忙了一年,习惯了围绕课程积累代码行数,到大二后,同年级的不少同学觉得没有事干,而他们尽管不跟我了,但知道要做什么事,仍然在忙。每到这时,我都暗喜,这就是大学,忙就对了。
  父母对孩子有着高尚和无私的爱。这种真爱是从“一把屎一把尿将孩子拉扯大”的过程中得来的。只有在不计代价的编程实践中,才能得到对编程的爱,才能够享受到学习编程的乐趣。对编程的爱,有人挂在口头,有人是自心头涌出,还有人,是用指头敲出来的。只挂在口头的爱,转眼可能就会见异思迁,有其他好玩的立马走人;发自内心的爱,必是有所体会,这种好感觉能伴人走得很远;而编程如过日子,其中有苦有乐,只有在踏实的工作中,才能见到平凡中的伟大。编程中,唯有用指头敲出来的爱,才是挚爱。

  大学课程内要求的题目和项目

  羽翼未丰的IT菜鸟身单力薄,写代码的课外习题成为首选。我在课外专业学习指导中,极力鼓动学生摆脱只靠着一本教材学习的习惯。看同类的教材或著作,与读书同步,完成其中的习题,这是课外题目的一个来源。课外的读物要瞄准经典的教科书,有位同学感叹道:“狠狠地读,认真地把书里的习题都给做了,对于打下扎实的基础有极大的帮助。”
  有些同学选择了将看过的书中的例题自己做一遍的做法。这种模仿对于起步无门的初学者很合适。只不过,我不赞成照着书抄下来的做法,在“抄之有道”的建议中,我谈到可以采用先看懂,然后自己写出的做法。可能需要多次的重复,但如果绕开该有的重复采用所谓的捷径,效果并不能保证。
  做编程题目多了,会对算法提出新的要求。在算法类知识的学习的阶段,也要有针对性地对某类数据结构和算法进行实践。教科书中的算法一般用伪代码描述,将之用某种具体的语言实现,建立自己的算法库,这是一类非常好的题目。在实现算法的过程中,会在抽象的层面上,得到更大的提高。
  有学生在我的博客中留言问道:
  老师,能给说一下链表、队列、树、哈希表等数据结构实际工作中的用途吗?怎么把理论和实际联系起来?
  面对这个很泛很大的问题,我先“呵呵”一个,说一千道一万,不如指路一条,回复道:
  看来你是已经学过了这些知识,面对这个到处都有答案的问题,我建议你现在可以接近实际工作自己去体会了。试着做点小项目如何?小游戏、通讯录、图书管理系统一类的题目就不错。
  有了做题目的积累,实践能力得到提高,就应该到做项目的层次上去小试牛刀了。面对初学者,我们对项目不作严格的定义,那些规模稍大一些,需要的代码行数稍多一些,具有相对完整功能的系统都可以称为是项目。能用百十行代码搞定了题目,做千余行的项目,会面临新的问题和挑战,在积累代码行数的道路上也将会有新的体验。

  项目从何而来?课程设计、大作业的内容可以视为一个练手的项目。自己做,不搭车,这是应该把握的一个底线。做不出来,说明学得不够,可以选择熬夜突击。要为此早做准备,平日的学习也就有了动力。套用做题目中的思路,从教材、参考书中可以获得练习项目的来源,从网上能找到别人拟好的项目需求,还可以自己提出创意自己开发。记得我在大三时,想用刚学的FoxBase+编一个小型数据库系统,完成母亲负责的农村信用站存取款业务。这样的开发永远不会有人采纳投入实际应用,但对一名大学生而言,还是一个可选的好项目。最终这个项目半途而废了,但我从中获得了不少的感悟。


  课外自主学习的题目和项目

  做编程题目中可以利用ACM竞赛与OJ平台,做项目也可以抓住参加一些专业性比赛的机会。我所在的山东省每年都有齐鲁软件设计大赛,吸引了不少学子参加,学院也给这项门槛不是很高的专业竞赛以场地、资金方面的大力支持,主要看重的就是同学们的参与经历。很多大学生选择利用暑假的时间,完成一件具有创意的作品参赛,收获了专业学习中的第一个项目,找到了专业学习的目标。由于有共同的目标,几个人能够团结在一起,共同攻克遇到的难题,这样的合作学习历程也令人难忘。
 



你可能感兴趣的:(学习指导,大学生)