在初二的时候第一次接触到了c语言,用的是经典的谭浩强的教材,我花了一个晚上看书看到了函数那一章,完全没有任何的阻碍,但是那时初中的那种应试教育并没有能给我自由发展的空间,我对编程的经历就到此告一段落。但是c语言给我的逻辑思维却在我的脑海里扎下了根,并且在之后的时间里渐渐发展壮大。
》》》从面向过程来看编程思想
大一时,我有重新接触到了c语言,虽然暌别已久,但是学习c语言依然没能给我以任何的困扰,我用了三天把教材看完,感觉c语言很简单,人们传说中很难的指针也不是很难,
我自认为编程也就是那么一回事,但是后来我参加了学校的acm队伍,有学了其他的编程语言,才渐渐明白,对于编程来说,语言只是工具,真正核心的是思想,思想才是最重要的东西,思想才是编程真正的功力,后来我在学习其他语言中,更加印证了这个道理。
在大一下学期时,我苦恼于只能编写dos程序,想写图形界面的程序,自己买了windows程序设计,做了一些几十行的图形小程序,感觉很良好,然后又去学了mfc。我还记得那时一个很冷的晚上,我终于看完了孙鑫写的《vc++深入详解》内心很是有做点什么的冲动,突然看了看手机,贪吃蛇,手机上有个贪吃蛇游戏,想了想,贪吃蛇不是逻辑很复杂,界面也很简单,没错,就做贪吃蛇吧。我花了整整一个晚上思考、上网查、看书、写代码、终于磕磕碰碰的写完了贪吃蛇,不在像以前在windows sdk那样散乱的编程,而是统一在mfc的框架之下,对数据进行了封装,实现了保存,读取,解决了键盘操作多线程的冲突,中途好几次被冻得坐不下去,不得不站起来跺跺脚。天蒙蒙亮时完成了程序,虽然很累,但是很满足,更重要的是我感觉到我的精神有了一次升华,以前零零散散看到的软件工程的思想和编程思想突然豁然开朗,我开始明白,语言只是工具,思想才是精华。就像对于加减乘除对于一般人来说可能只能算算花了多少钱,但在科学家手里却能证明深奥的定理。同样的工具在不同人的手里能发挥出截然不同的威力。果然我后来又去学习别的语言是都能很快的上手并且做出项目,而且能把我以前的软件工程的思想应用到其中。
在我看看来编程思想就像内功,语言就像外功。内功强了无论学什么使用什么外功都很强。
最应该着重提升的就是编程思想,但是很多人并没有看到这一点,可能学了很多的语言,却没实际动手写过多少项目,背了很多东西,考试很厉害,其实真正的编程功力却很弱。曾听说有些计算机专业考研的人没什么编程功力,为了考试,于是就去背程序,对于这种人,我是及其不屑的,窃以为这种人哪怕真的考上了研究生,出来除了能考试恐怕也依然做不了什么项目,只有考试的能力,而没什么创造GDP的能力,这种人或者除了能拉升一下CPI也就只能徒然浪费地球的资源罢了。知和行无法合一必然无法进阶到更高的层次。