徽剑以一个拿到(说混到也可以)的系统分析员证书的编程者的亲身体验,中国人编程难难在难在接口语言和技术资料语言上,而不是“写程序”的语言上。学过编程的朋友都知道,程序中绝大部分都是逻辑和数学表达式,与采用英语还是汉语来描述的关系实质并不大。
就程序而言,不管学习编程的是谁,是中国人,还是美国人,有一个共同的难点。那就是计算机语言不是我们人类日常交流的语言,越是效率高的编程语言,越是离人们日常生活交流语言较远。这点上是共同的。
而 中国人真正不利之处就是如果英文不熟练,无法阅读技术文档(诸如C++、Java中上万个用英文的库函数也不是需要编程者都得记住的东西),无法理解大量 的接口等英文信息。而这一点就不是简单用汉语编程那么简单了。世界上最著名的软件公司,大多是母语为英语的国家。印度现在之所以成为世界第二软件大国,因 其母语是英语,这样一来在阅读和学习过程中接触相关技术就没有什么障碍。
依照我们目前的发展条件,短期内不大可能出现诸如硬件、操作系统等的全国产化,这样一来如果我们还是热衷于所谓的用“汉语写”程序的话,就未免搞笑了。其实我们来看看编程的发展历史:
最早期,直接对硬件编程,使用机器语言和汇编语言。
后来,出现高级语言,在一定程度便于人们的理解了。
再后来,出现面向对象的程序开发,使得程序开发进一步容易理解和实施。
现 在流行的是面向对象的可视化程序开发,每个语言本身都是“不可视”的,仅仅是语言而已;所谓“可视化”不过是编程工具所提供的功能,让你在编窗口等一些 “看到着”的程序时可以使用拖拽等可视化操作。如同C++是门语言,而vc++只是一个可视化编程工具,vc++实现了C++的可视化编程。
有过较长期编程经验的老程序员都会有这演感受,在十年前写C++语言程序是很累的(那时国内还很少大家都是用C较多),现在用C++的话,可以用VS2005多方便啊。诸如.NET代码生成器有助于快速应用程序开发。
现 在甚至不用写代码就可以生成很多小点的程序,这在十年前、二十年前是不可想象的,同样再过十年,不写代码生成很多今天看来是很大的程序也不是难事。所以徽 剑以为在未来,程序员编程“写”的代码数量将会越来越少,程序员更多的考虑的是程序的结构和性能,然后动动鼠标,输入几个数据,一套程序就编好了。
在这种情况下,更多的内容被封装了,到那时,才可以说不懂英文也照样编程。这才是发展的趋势。
至于底层部分,那就只有等到国产的硬件出来了,推出大量中文指令集,才有实现真正汉语底层开发的可能!