编程人员的基础之路
2304 点击·0 回帖
![]() | ![]() | |
![]() | 我不是高手,是个初学者。在论坛中发现很多人和我一样,编程这条路不知道该如何走。
近日偶得一书,对我启发很大,解答了我近日来一直思考和迷惑的问题。现将书中介绍的高手成长的六个阶段写下来,与和我同样迷茫但又同样对编程有爱好和兴趣的朋友们共享之。 第一阶段:熟练地使用某种语言。相当于练武中的套路和架式这些表面的东西。 (作者推荐学习C语言。我学的是C++。其实C++的思想是面向对象,C面向的是更底层的东西。要想成为真正的高手,懂得C语言和BASIC语言是必不可少的。作者强烈反对一开始就从java,MFC开始,这些高级的东东对底层的东西进行了多次包装,你永远不可能清楚底层的东西,你也永远成不了高手。我对此有同感:最开始学的是JAVA,三个月就编出来一个信息查询系统,后面又开始学MFC,半年后还不清楚是怎么回是。经高人指点,才开始走上C++学习之路) 第二阶段:精通某种平台的接口(如Win 32的API函数)以及所对应语言的自身的库函数。相当于可以进行真实散打对练了。 (我认为这个阶段学习windows界面编程是比较好的,既能熟悉API函数,又能加深对语言自身的库函数的理解,同时还有一定的成就感。推荐一本入门书,《windows程序设计》。) 第三阶段:深入地了解某个平台系统的底层。相当于开始由修炼硬功转变成修炼初级内功了,也就是“手中有剑,心中无剑”。 (我也还没有到达这个阶段,我的感觉就是对cpu、计算机硬件、操作系统原理、软件调试技术等方面的内容的学习。) 第四阶段:能直接在平台上进行比较深层次的开发,比如能进行VxD或操作系统内核的修改,语言已经不再束缚你了。相当于进行了高级内功的修炼。 (这个阶段就要对内核加以深入研究了,掌握进程、线程、内核等方面的知识。推荐一本进阶的书,《windows核心编程》) 第五阶段:能够从全局上把握和设计一个比较大的系统体统结构,从内核到外层界面。可以说是“手中无剑,心中有剑”。 (我认为这时应该学习软件架构和设计模式了。) 第六阶段:这是最高境界,任何问题都纯粹变成了一个思路的问题。也就是“手中无剑,心中也无剑”。 (这时还有什么说的呢?耐心 + 兴趣 + 开放性思维 + 天赋。) | |
![]() | ![]() |