对于程序员来说,“高手”和“菜鸟”之间的区别实际上只有两个因素:一是从事编程时间的长短不同,使经验的多少有所区别;第二个因素就是手头掌握资料的多少了,因为很多问题并不是靠自己钻研可以解决的,必须靠资料,试想在写DOS汇编程序时如果没有中断手册,可以自己钻研出来吗?实际上,大部分“菜鸟”向“高手”问的问题完全可以由参考资料解决,即使一个“菜鸟”对某个问题暂时不懂,但手头有解决问题的详细资料,经过一段时间的钻研,问题自然会解决。“高手”就是这样慢慢练成的。
当时钟走到21世纪的时候,软件规模飞速膨胀,仅是开发工具就动辄几十MB,更不用说复杂的操作系统及其他软件了,所以现在完成一件最基本的事情都必须从文档中寻找合适的方法,大部分程序员手边的文档比字典还要厚几倍,并且,在这些浩如烟海的文档中苦苦寻找之后,还不一定能找出一个满意的解答。像Windows就是一个数据结构的迷宫,其API的资料远比DOS下的中断资料要多,在这种情况下,程序员的经验可以在程序的优化和调试方面发挥作用,但如果没有资料,连程序都写不出来,就谈不到优化和调试了。
摘自《Win32汇编教程》作者:罗云斌