我每天都要收到很多的朋友来信。有不少的网友经常问我:面对众多的开发工具/语言,我该选择哪一个?怎样才能学好一门语言?怎样才能算是一个真正的程序高手?……
首先,我不算是一个什么程序高手,我也就半吊子水晃晃荡荡。我不太喜欢“程序高手”这个词,最多,只能算是一名“熟炼的开发者”而已,很多时候亦是半懂不懂。我编程是靠自学的,没有人教,也没有人问。因此走了不少弯路。当然现在看来,那些走过的弯路也算是一种积累。从 1994 开始, 我所使用的开发工具是这样一个经历:1994: GWBASIC, 1995: FOXBASE, TC, 1996: VFP, VB, PB, DELPHI, 1999: VC++, PHP。总的说来,各种开发工具各有秋千,应根据具体应用来采用不同的工具。例如写MIS用PB/VB,界面设计用VB/Delphi,写系统软件,用C/C++是最好的,做网站,有 PHP, ASP, JSP等等。对于初学者来说,先用一种可视化强的工具(如VFP/VB/DELPHI)比较好,容易掌握,上手也快。但如果你想走更深入一引起,我建议你还是很有必要去精通C/C++,甚至了解一些汇编。
有人说,C/C++太难学了,开发效率也不高。我先不说C/C++优越于其他语言的地方(这在很多的资料中都有介绍),就单从一个很功利的角度来说说。Delphi/ VB对于一般人来说学上几个月就可以上手了。易学的东西学的人肯定多。而对于C来说,由于它难掌握,学的人不火,但一旦你真正掌握了,你的竞争实力就比其他人强。现实中,C程序员的工资普遍高于其他程序员就是一个证明。
就我个人认为,程序员不应该拘泥于某个特定的语言,每天为某个开发工具的优劣争来争去是没有意义的。重要的只有两点:
- 你用的开发工具能解决你所遇到的实际问题吗?实用为王,适合的,能用的,就是最好的。
- 你喜欢这个开发工具吗?兴趣,兴趣才是最重要的。选择你所喜欢的。
那么,怎样跨越程序新手这道坎呢?下面这几点建议也许对你可能有些帮助:
- 遇到问题时从所有你能想到的方面考虑去试图解决;
- 一定多动手,学一个专题(如网络/多媒体)后写一个软件检验自己;
- 用好联机文档(如MSDN)查询函数和资料,利用网络资源;
- 掌握好的跟踪调试技巧,多看一些高手的程序,从本质上理解;
……
说白了,要想成为一名熟炼的开发者,就是最大限度的利用现有的资源,然后加上你的汗水。没有什么稀奇的。