7.有人认为,“中文编程”是解决中国程序员编程效率一个秘密武器,请问它是一个 “银弹” 么?

初见“银弹”这个词,还不是很确定它的意思,通过搜索,得知银弹这个词常被用做致命武器的代言词,被比喻为具有极端有效性的解决方法,作为杀手锏,最强杀招、王牌等的代称。

那么要回答“中文编程”是否是解决中国程序员编程效率的一个“银弹”这个问题,首先要了解目前阻碍中国程序员编程效率提高的桎梏是什么,然后才能根据“中文编程”是否能够冲破这些桎梏来判断它是否是“银弹”。

下面我来谈谈我认为的目前阻碍编程效率提高的三大桎梏,或说是对于提高编程效率极为重要的但却很难具备的三种能力。

1.编程人员要判断问题在什么程度上可被机器解决,再后是让机器能更高效率地解决问题,比如同样的问题可能会有效率差别巨大的算法,所以对于机器解决问题程度的把控和算法的使用是编程效率的两大关键,一个编程人员如果不懂这两点,那他的编程效率会大大降低。

2.编程人员要具备抽象问题的能力,今天任何编程人员都会使用许多轮子(表示用于编程的各类辅助知识或者工具),例如操作系统编译器数据库,算法数据结构等。好的程序员知道能够如何将问题抽象与分解,从而使其与合适的轮子结合起来,提高编程效率;而新手程序员往往对轮子的了解不足,对问题的抽象不够,以至不会将两者合二为一解决问题。所以程序员抽象问题的能力和对系统设计的了解与熟练应用也是影响编程效率的主要因素。

  3.编程人员需要具有考虑扩展性的能力。算法竞赛中的很多算法考虑的是单机的内存算法,计算模型经过高度抽象,在实践中机器的模型更为复杂。比如单机的多级结构带来的各种时间空间复杂度的取舍平衡,多机网络中如何能在提高单机性能外进一步优化整体性能。除了在机器端的扩展,在程序员一端的扩展也很重要。复杂的问题和工程往往意味着团队协同以及更长时间的开发维护,团队分工和设计沟通这里暂且不论。举个容易被忽视的例子,程序中的注释。高手会更在意完整且表达清楚的注释,因为这是写给现在和未来的团队(包括自己和其他成员)看的,直接影响到长期的整体开发维护效率。
  
      显然,这三个核心桎梏的突破无一与“中文编程”有关,所以“中文编程”不是解决中国程序员编程效率的“银弹”。

而对于“中文编程”的看法,我对老师给出的第二个参考文献中的一些说明比较认同。文中对为何要做中蟒做了如下的解释:“一大部分原因是为了推广电脑教育。中蟒的对象是电脑编程的初学者、对编程概念不了解的人以及不打算以程序员为职业的人。 对这些人來說, 能用中文来学习并完成简单的编程工作是一件很不錯的事。也许你会认为英文是电脑的标准语言,要学电脑就要学英文, 因此不必为了那些又想学编程但又不想学英文的懒鬼操心。 但我想指出学英文是要的,但最好別从电脑程式中来学, 因为编程语言和英文自然语言很不一样。 对于英文基础不好的入门者來说, 以中文进行学习可以专注于编程的概念, 常用的算法, 程序的逻辑這些东西。 就算他以后再也不碰电脑程式, 起码他学会了一些解決困难的思考方法,而不是像现在这样只学了一堆@var fscanf() public virtual friend (double)** struct $v->cast[[$$key]] 等莫名其妙的东西。” 也就是说,中文编程仅仅是从语言上让那些初学者更容易入门,并且相对于英语更专注于编程逻辑、算法等方面。但是对于长期从事编程的人员来说,中文或者英文都只是一种符号,熟练了之后都是一样的,所以并不能对效率的提高有什么帮助,更不能被说成“银弹”。

引用:http://blog.csdn.net/dickyqie/article/details/52329124

答题人:尤心心

时间: 2024-10-10 23:21:24

7.有人认为,“中文编程”是解决中国程序员编程效率一个秘密武器,请问它是一个 “银弹” 么?的相关文章

有人说中文编辑是解决中国程序员编程效率的秘密武器,请问他是一个银弹吗?

一.“银弹” 首先在这里解释一下“银弹”的概念,顾名思义就是银质的子弹(Silver Bullet),是古老的欧洲民间传说中能杀死狼人的利器.当然现实中是没有狼人的,但现实中确实有银弹这个东西.而其意义也类似于能杀死狼人的最好办法.现实中的狼人可以是一个棘手的项目,或者一件不可能的事.而“银弹”就是指能解决这些事的方法,或者技术手段,被比喻为具有极端有效性的解决方法,作为杀手锏 .王牌等的代称. IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表

有人认为“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?

有人认为“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?首先,百度给出“银弹”是这样的解释:能杀死狼人的利器 在古老的传说里.狼人是不死的.想要杀死狼人有几种方法: 1.像杀死吸血鬼那样用木桩钉住狼人的心脏. 2.将月光遮住 3.用银子做的子弹射穿狼人的心脏或头 当然现实中是没有狼人的.但现实中确实有银弹这个东西.而其意义也类似于能杀死狼人的最好办法.现实中的狼人可以是一个棘手的项目,或者一件不可能的事.而“银弹”就是指能解决这些事的方法,或者技术手段. 我不认中文编程是

2.有人认为,“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么?

银色子弹(英文:Silver Bullet),或者称“银弹”“银质子弹”,指由纯银质或镀银的子弹.在欧洲民间传说及19世纪以来哥特小说风潮的影响下,银色子弹往往被描绘成具有驱魔功效的武器,是针对狼人等超自然怪物的特效武器.后来银色子弹常被用做致命武器的代言词.被比喻为具有极端有效性的解决方法,作为杀手锏[1]  .最强杀招.王牌等的代称. IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表的一篇关于软件工程的经典论文,便以<没有银弹:软件工程的本

“中文编程”是解决中国程序员编程效率的秘密武器,这是一个银弹吗?

我不认为“中文编程”是解决中国程序员编程效率的秘密武器,也不是一个银弹. 1.中文字符比英文字符所占的内存大,运行起来比英文的慢: 2.中文容易出现的问题比较多,而且还存在兼容性: 3.大多时候,英文输入比中文快: 4.编程的快慢应该跟个人的习惯有关(就像有人用五笔打字快有人用拼音打字快一样),跟个人的编程能力有关. 当然,中文编程也给程序员带来了便利.可以解决程序员英文不好的问题,而且,如果实在不愿意学英文的话,还可以把用来学英文的时间用在研究程序上,让编程更上一层楼.但这些便利绝对不能说是银

关于“中文编程”是解决中国程序员编程效率的银弹的看法

讨论题目: 有人认为,“中文编程”是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”么? 银弹被比喻为具有极端有效性的解决方法,作为杀手锏 .最强杀招.王牌等的代称.IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表的一篇关于软件工程的经典论文,便以<没有银弹:软件工程的本质性与附属性工作>(No Silver Bullet — Essence and Accidents of Software Engineering)为标题.其中的“银

有人认为,“中文编程”是解决中国程序员编程效率的密码武器,请问它是一个“银弹”吗?

我个人认为不是. 首先解释一下“银弹”这个词.“银弹”一词常被用做致命武器的代言词,被比喻为具有极端有效性的解决方法,作为杀手锏.最强杀招.王牌等的代称.在该题目中“银弹”指的是一项可使软件工程的生产力提高十倍的技术或方法.可见要达到银弹一词的说法,对中国程序员来说,中文编程必须达到高效率.蜻蜓点水的效果才行.然而现实中的“中文编程”远远达不到这样的效果. 原因有如下: 因为编程是一种实现功能的逻辑编写操作,为解决功能性与需求性,能否实现主要在于代码设计与方法,语言作为一种表现形式对编程的影响并

有人认为”中文编程“是解决中国程序员编程效率的秘密武器,请问他是一个”银弹“么?

易语言,不懂大家了解不,易语言就是一个所谓的中文编程语言,他在程序员队伍里被使用的不多,我觉得,编程更重要的是一种思想,一种数学问题,语言只是起表达作用,而用更富表达能力且所需字数更少的表达方式,那便是最佳的,当然,可能在中国有一部分程序员,英文不怎么好,在进入It行业后,在对于一些方法,变量等的命名上无从下手,或者说所使用的命名不规范,导致可读性,可传播性变差,这时候用中文来起名字或者是一个不错的选择,但是从长远来看,我认为作为程序员,要有一定的英语功底,毕竟很多的书籍,文献资料都是用英文写的

有人认为,”中文编程“是解决中国程序员编程效率的秘密武器,请问它是一个“银弹”吗?

首先,我的观点是编程语言并非等同于英语,英文只是一个记号而已,如果所谓的中文编程只是将这些标识符和关键字换成中文的话技术上没有难度,只是这样做完全没有意义.因为编程语言与编程语言的区别并不在于所使用的记号是英文.法文还是中文,而是在于其设计思想和算法表现力.而且如果采用中文的话源代码会由于编码不统一带来非常麻烦的问题.由于计算机底层不支持中文,中文编程势必无法胜任底层编程,所以中文编程的缺点远大于其优势. 举个例子,对于中文编程语言,如果只是把SHORT A=10变为 整型数据A等于十,那么不过

有人认为,“中文编程”是解决中国程序员编程的秘密武器,请问它是一个“银弹”么?

首先,我的观点是编程语言并非等同于英语,英文只是一个记号而已,如果所谓的中文编程只是将这些标识符和关键字换成中文的话技术上没有难度,只是这样做完全没有意义.因为编程语言与编程语言的区别并不在于所使用的记号是英文.法文还是中文,而是在于其设计思想和算法表现力.而且如果采用中文的话源代码会由于编码不统一带来非常麻烦的问题.由于计算机底层不支持中文,中文编程势必无法胜任底层编程,所以中文编程的缺点远大于其优势. 举个例子,对于中文编程语言,如果只是把SHORT A=10变为 整型数据A等于十,那么不过