现代软件工程课程作业 第一章第7题
就像Fred Brooks在《没有银弹》中强调的,真正的银弹并不存在,而所谓的没有银弹则是指没有任何一项技术或方法可以能让软件工程的生产力在十年内提高十倍。我觉得也不存在真正的“银弹”,可以完全解决中国程序员的编程效率问题。
首先我们无法忽视现实中,有英文作为编程语言多年的影响,要知道编程和编译是分不开的,要能让所有的编程语言都转化为中文编程,让机器能够正确的把你所写的程序语言转换为机器语言,需要一个与大环境对抗的过程,而这个过程往往是比较漫长的。
其二,中文编译能发展到什么程度,如果是像第一篇微博那样只是使用了中文的变量或者函数名,这样或多或少给人一种不伦不类的感觉。在中英文之间的输入法切换,也会降低,编程效率。中文大概是世界上最暧昧和模糊的语言,有时虽然有利于人与人之间的交流,但是当作一种编程语言,获取会因为缺乏缜密的逻辑性无法正确简洁的表达。
其三,如果我们有了完整的中文数据库,函数库,编译器等等,中文编程就变得十分局限。虽然在某种程度上可能降低对于学习编程的英文要求,让不会英文的人能更快的上手编程,但是我们就将程序局限于自己的国家,毕竟要让整个世界接受中文编程是比较困难的。而事物的发展,特别在科技领域,与强国的交流,切磋是十分重要的,如果只编写中国人懂的代码,对于这款软件或者是整个国家软件行业的持续发展是比较不利的。
说了这么多,但是我不能否认中文编程的优点,在某些特定的场景中,可以发挥很大的优势。例如,同学写的代码各种奇怪的拼音组成的变量名和函数名,某种程度让人也很是抓狂。但是要发展完全的中文编程,需要更多的考量。
马琳娜
2016/9/9