码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-11-12 19:58:54      阅读:649      评论:0      收藏:0      [点我收藏+]

标签:

 

  银色子弹(英文:Silver Bullet),或者称银弹”“银质子弹,指由纯银质或镀银的子弹。在欧洲民间传说及19世纪以来哥特小说风潮的影响下,银色子弹往往被描绘成具有驱魔功效的武器,是针对狼人等超自然怪物的特效武器。后来银色子弹常被用做致命武器的代言词。被比喻为具有极端有效性的解决方法,作为杀手锏、最强杀招、王牌等的代称。  IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表的一篇关于软件工程的经典论文,便以《没有银弹:软件工程的本质性与附属》 (No Silver Bullet — Essence and Accidents of Software Engineering)为标题。其中的银弹是指一项可使软件工程的生产力在十年内提高十倍的技术或方法。该论文强调由于软件的复杂性本质,而使这样 真正的银弹并不存在。

 

  中文编程(或者称为中文编程语言)是指使用中文来书写的程序设计语言,其目的是为了减少对英语的学习,将精力集中在程序设计上,并且便于程序交流和代码维护。对于”中文编程“这个想法,对于大多数中国的程序员来说,无疑是相当具有吸引力的。“中文编程”开发的意义有以下几点:首先是语言问题,英语毕竟是外语,哪有自己用了十几年甚至几十年的汉语用得顺手;其次是文化差异,中国人的传统文化和外国人的还是有相当一部分不相同的,传统习惯总是很难改变的。

 首先,谈到中文编程不知道你怎么看?个人拙鉴,觉得这或许是适应于我国当前国情而言,当下国内IT市场软件工程领域可以提高效率突飞到一个新层面的一个可行方法!
在谈这话题之前,我觉得有必要追溯我们中华民族汉字的由来,从距今8000多年之前先辈们刻纹画符号记载以来,持续到6000多年的汉字演变历程,由:半坡陶文东夷骨刻文 甲骨文 → 金文 → 小篆 → 隶书 → 楷书 → 行书;这一发展历史,中华汉字博大精深,翻看中华字典你便可以知晓我们民族文化精进,就拿我们日常生活常用到的汉字统计,大约也就20007000个字,是中华汉字字典库中的一小部分,可见,如果在国内IT领域突破,拥有一种属于我们自己的国内领先编程技术,简便高效的汉字编程方法,我们软件工程领域是将突破到一个什么高度,相对于常用的几十个英文编程技术而言,如果汉字编程技术的实现,这将让我们IT界技术实现飞跃,领跑于世界!

  接着我想说明一个大家容易忽视观点——中文打字是远快于英文打字的,即便用拼音,本身中文精炼篇幅短,基本上是英文的三分之二甚至二分之一,而且中文输入法充分利用计算机的处理能力,词组整句输入。拼音打字每分钟150字,五笔每分钟200字不算神,从信息量上来说,200个汉字能表达超过1000个拉丁字母的信息量,试想下,一秒钟能打十几个字母的英文打字手,你见过么?而中文输入150/分的人,称其为录入人员那都侮辱了这个职业!。但是,这种快速是有前提的——1.必须是大篇幅的通顺文章;2.不能中英夹杂或者有太多的符号、格式。而编程语言无法满足上述两个条件,从自然语言的角度,编程语言是狗屁不通的,从格式上来讲,编程语言的有代码格式,有运算符等各种符号,光是输入法切换就很麻烦了!

 

 

 其次,就“银弹”而言,我个人拙思觉得是不现实的;想要根本上提高效率在短时间内,能够不断顺应用户需求,持续满足日益多变,不断跟新的需求关系,“根治”一般的在短时间内仅靠“中文编程”这样的技术实现与改善中国软件领域生产力的状态不大现实;在运动发展的世界里,尤其日益需求不断跟新多变,生命周期短的IT技术产品领域,这样的“银弹”观点,个人觉得不是很可行,很难做的到!其造成阻碍因素,个人觉得有如下几点:
   1,就传统软件工程生产发展而言,依管理学软件工程开发角度看,软件工程=管理+技术,也就是通过科学有效的管理手段尽可能在软件开发过程中消除软件危机,开发高质量的软件满足用户!因此,从软件开发生命周期中,从软件开发项目的简历,问题分析定义、可行性分析、需求分析、概要设计、详细说合计、编码、测试、运维这8个阶段中就在开发过程中进行了科学的管理和软件危机的消除,虽然在各个阶段所用到的瀑布模型,原型模型,螺旋模型,增量模型,喷泉模型等极大的额改善了软件开发过程中管理质量问题,但是仍旧满足不了,日益多变的用户需求、市场需求,同样改变不了软件生命周期短的问题,生产效率低下等。。。。
   2,就软件工程目标定义而言,软件工程项目发展的木板是根据项目给定的成本、进度下,开发具有可修改性,有效性,可靠性,可理解性,可维护性,可重用性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品;也就是说,在追求软件开发中主要满足客户需求外,还得满足软件自身BUG的尽可能避免,追求高效的时候还得保证质量,可复用,延长软件生命中后期,然非如此,市场的多变因素,需求的多变,开发人员的局限并不能使软件按照要求无BUG的开发,实现自动化生产,难免出现BUG,甚至软件危机,即使通过“汉字编程”可以解决软件工程项目开发过程中效率,也达不到理想无BUG,全面满足开发者及用户需求的软件;
   3,计算机技术发展至今,已经成为了多元化技术的一种统称。计算机的软件工程技术是目前应用最为广泛的技术,也是发展最为迅速的技术。计算机技术应用于网络、工业、医疗以及教育行业等,成为了主流的应用型技术,并且在一定程度上推动了原有行业的发展,实现不同行业的协同发展模式。但是,在最初的计算机设计中,其主要的作用就是为了进行数据计算。计算机数据处理技术运算速度也造成了影响因素。
   综上所述,这些因素就我个人而言 其次,就“银弹”而言,我个人拙思觉得是不现实的;想要根本上提高效率在短时间内,能够不断顺应用户需求,持续满足日益多变,不断跟新的需求关系,“根治”一般的在短时间内仅靠“中文编程”这样的技术实现与改善中国软件领域生产力的状态不大现实;在运动发展的世界里,尤其日益需求不断跟新多变,生命周期短的IT技术产品领域,这样的“银弹”观点,个人觉得不是很可行,很难做的到!其造成阻碍因素,个人觉得有如下几点:
   1,就传统软件工程生产发展而言,依管理学软件工程开发角度看,软件工程=管理+技术,也就是通过科学有效的管理手段尽可能在软件开发过程中消除软件危机,开发高质量的软件满足用户!因此,从软件开发生命周期中,从软件开发项目的简历,问题分析定义、可行性分析、需求分析、概要设计、详细说合计、编码、测试、运维这8个阶段中就在开发过程中进行了科学的管理和软件危机的消除,虽然在各个阶段所用到的瀑布模型,原型模型,螺旋模型,增量模型,喷泉模型等极大的额改善了软件开发过程中管理质量问题,但是仍旧满足不了,日益多变的用户需求、市场需求,同样改变不了软件生命周期短的问题,生产效率低下等。。。。
   2,就软件工程目标定义而言,软件工程项目发展的木板是根据项目给定的成本、进度下,开发具有可修改性,有效性,可靠性,可理解性,可维护性,可重用性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品;也就是说,在追求软件开发中主要满足客户需求外,还得满足软件自身BUG的尽可能避免,追求高效的时候还得保证质量,可复用,延长软件生命中后期,然非如此,市场的多变因素,需求的多变,开发人员的局限并不能使软件按照要求无BUG的开发,实现自动化生产,难免出现BUG,甚至软件危机,即使通过“汉字编程”可以解决软件工程项目开发过程中效率,也达不到理想无BUG,全面满足开发者及用户需求的软件;
   3,计算机技术发展至今,已经成为了多元化技术的一种统称。计算机的软件工程技术是目前应用最为广泛的技术,也是发展最为迅速的技术。计算机技术应用于网络、工业、医疗以及教育行业等,成为了主流的应用型技术,并且在一定程度上推动了原有行业的发展,实现不同行业的协同发展模式。但是,在最初的计算机设计中,其主要的作用就是为了进行数据计算。计算机数据处理技术运算速度也造成了影响因素。
   综上所述,这些因素就我个人而言是不能达到让“中文编程”技术发展的同时完全如“银弹”般的改变中国乃至世界软件工程发展领域状态!是不能达到让“中文编程”技术发展的同时完全如“银弹”般的改变中国乃至世界软件工程发展领域状态!
   

 

 

 

 

 

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

标签:

原文地址:http://www.cnblogs.com/liujikai/p/4959788.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!