如何成为编程高手???!!!

如题所述

这是一篇来自网络的我文章的改版成为一名编程爱好者需要经历以下几个阶段:第一阶段:此阶段主要是能熟练地使用某种语言,最好是当下比较热门的语言,如:C#、Java、C或C++等等,当然也包含其他的语言,这就相当于练武中的套路和架式这些表面的东西。第二阶段:此阶段能精通某个平台(如.NET平台、Java平台等等)的Web技术或GUI窗口技术(Windows GUI),到达这个阶段后,也就相当于可以进行真实散打对练了,可以真正地在实践中做些应用。第三阶段:此阶段能深入地了解基于某种平台的各种接口,及具体系统的底层,此阶段已经具有了初级内功的能力,也就是“手中有剑,心中无剑”。第四阶级:此阶段能直接在平台上进行比较深层次的开发。基本上,能达到这个层次就可以说是进入了高层次。这时进入了高级内功的修炼。比如能进行VxD或操作系统的内核的修改。此阶段需要修炼者具有比较深的造诣和潜能,同时要在很大程度上加深自己的知识(离散数学、数据结构、计算机结构与原理、操作系统原理、编译原理等等吧),深入的学习计算机的系统知识。第五阶级:此阶段就已经不再局限于简单的技术上的问题了,而是能从全局上把握和设计一个比较大的系统体系结构,从内核到外层界面。可以说是“手中无剑,心中有剑”。到了这个阶段以后,能对市面上的任何软件进行剖析,并能按自己的要求进行设计,就算是MS Word这样的大型软件,只要有充足的时间,也一定会设计出来。每一个阶段再向上发展时都要按一定的方法。第一、第二个阶段通过自学就可以完成,只要多用心去研究,耐心地去学习。要想从第二个阶段过渡到第三个阶段,就要有一个好的学习环境。例如有一个高手带领或公司里有一个好的练手环境。经过二、三年的积累就能达到第三个阶段。但是,有些人到达第三个阶段后,常常就很难有境界上的突破了。他们这时会产生一种观念,认为软件无非如此,认为自己已无所不能。其实,这时如果遇到大的或难些的软件,他们往往还是无从下手。世界上并没有成为高手的捷径,但一些基本原则是可以遵循的。1.扎实的基础。精通一门编程语言(C#或Java等),深入理解其编程思想。之后,适当学习数据结构、离散数学、编译原理等知识。(如果你有足够多的时间可以深入学习这些知识,它们真的非常重要,但是如果没有时间或暂时学不会,放一放以后再看,也不失为一种好方法)3.韧性和毅力。这也许是"高手"和一般程序员最大的区别。A good programming is 99% sweat and 1% coffee。高手们并不是天才,他们是在无数个日日夜夜中磨练出来的。成功能给我们带来无比的喜悦,但过程却是无比的枯燥乏味。你不妨做个测试,找个10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。4.对答案的渴求。人类自然科学的发展史就是一个渴求得到答案的过程,即使只能知道答案的一小部分也值得我们去付出。只要你坚定信念,一定要找到问题的答案,你才会付出精力去探索,即使最后没有得到答案,在过程中你也会学到很多东西。5.多与别人交流。三人行必有我师,也许在一次和别人不经意的谈话中,就可以迸出灵感的火花。多上上网,看看别人对同一问题的看法,会给你很大的启发。6.不钻牛角尖。当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。当重新开始工作的时候,我会发现那些难题现在竟然可以迎刃而解。7.丰富的想象力。不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法。丰富的想象力是建立在丰富的知识的基础上,除计算机以外,多涉猎其他的学科,比如天文、物理、数学等等。另外,多看科幻电影也是一个很好的途径。8.最简单的是最好的。这也许是所有科学都遵循的一条准则,如此复杂的质能互换原理在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc2。简单的方法更容易被人理解,更容易实现,也更容易维护。
温馨提示:答案为网友推荐,仅供参考
相似回答