人人都是程序员

[转]人人都是程序员—自动编程软件在德国浮出水面

2006-12-19阅读4413 评论1

CT公司对外公布最新研发成果

   来自美国芝加哥的消息,一家名为CT(Care Technologies)的软件公司向外界公布了其最新的研发成果——一款声称可以把应用软件开发速度提高四十七倍并可在某种程度上代替程序员的自动编程软件。据了解,这款软件被命名为OlivaNova。

   为了证实这款软件的功能,Care Technologies公司(以下简称CT)还特地邀请了很多对此感兴趣的公司去其位于德国慕尼黑的一个工作室做了为期两天的访问。在该工作室,参观者 们亲自试用了一些由OlivaNova“编”出来的软件,有一个商店管理系统、一个效用管理软件和一个高尔夫俱乐部管理系统。但由于时间的限制,他们并没 能对这些软件的性能进行具体的评估。

   看到这则新闻,相信所有的程序员包括比尔·盖茨都会惊出一身冷汗。因为人人都可以用OlivaNova自动编制出需要的软件,人人都是程序员,盖茨们就要 丢掉手中的金饭碗,怎能不急呢?但在打倒比尔之前,还是有必要了解一下这个所谓的自动编程到底是个什么东西?是不是真的如此神奇?

   自动编程初露端倪

   我们都知道,在各种集成开发环境中,向导(Wizard)可以帮助人们建立多种典型的应用程序。不过这还不能称作自动编程,因为通过向导等建立的程序必须在人工修改后才可正常使用,向导过程中也需要给出各种参数,毫无智能可言。

   因此各种组织和公司都致力于在自动编程方面取得进展,如对象管理组织(OMG)在UML 2级的基础上①提出了MDA(Module Driven Architechture)的概念,目标就是要实现从UML企业化模型到最终代码的自动化生成。这类典型的软件包括IBM Rational Rose以及一系列Rational软件。

   而上面提到的OlivaNova软件,它并没有采用UML的MDA能力,而是使用了自己编写的模型执行系统。使用OlivaNova软件进行自动编程时, 需要先使用OASIS模型语言建立软件架构,然后OlivaNova会启动内置的转换引擎选择合适的程序开发语言输出程序。其整体思路与MDA并无多大差 异,但应用却要广泛许多。

   目前OlivaNova支持的开发平台有Windows和几乎所有的Unix/Linux,并可自动生成VB 6.0、JAVA/EJB、JSP、Cold Fusion、。NET程序代码,以用来开发Web、客户端/服务器、Web Serivce、Windows Service等程序。

   OlivaNova扩展了自动编程应用的领域,可谓领先于IBM等大公司,着实火了一把,但这种自动编程真的能够让人人都编制出自己需要的程序吗?我们先来看看编程语言的发展历史——

   程序设计语言发展史

   当计算机在上世纪四十年代刚刚问世的时候,编程可谓是痛苦的工作。当时的计算机,并没有键盘等输入设备,人们只能使用笨重的继电器、开关去操作庞大的“巨 型机”。所有的程序都使用机器语言以二进制形式(全都是0、1的组合)书写,再用专门的像老式打字机一样的穿孔机把源程序敲到到一条长长的黑纸带上。然后 操作员拿着长长的纸带进入酷似外科手术室的机房,进行期待已久的计算。若是程序出现错误,还需要重新打孔。

   1949年,汇编语言被提出,它大大提高了编程的效率,但仍不够直观简便。1953年12月,IBM公司程序工程师J. Backus开始设计一种用于科学计算的“公式翻译语言”(FORmula TRANslator)。他的小组于1954年完成了第一个程序设计高级语言——FORTRAN。自此以后,各种高级程序设计语言如雨后春笋般涌现出来, COBOL、ALGOL、BASIC、PASCAL、C/C++……令人眼花缭乱。

   近年来,随着面向对象程序设计和网络技术的兴起,一批新的程序设计语言开始流行,如Sun的Java、微软的C#语言和。Net平台、网页编程流行的PHP、ASP、通用的XML等等。

   但再怎么说程序开发语言也只是让人们越来越易读懂程序,在软件日益庞大的今天,动辄几万行的源码全靠手工编写,非把人累趴下,因此各种各样的开发工具就成为编程的必需品——

   开发工具助力程序设计

   开始,人们使用编译器或解释器内置的查错功能自动检查程序源码中的错误,在代码不多的情况下,也足够程序员使用。而随着代码的增多,单纯在编译时检查错误 远远不能满足需要,因此诞生了一些具有语法高亮显示、规范代码功能的编辑器,它们都能够在书写代码时有所提示,将错误扼杀于萌芽状态。这方面著名的有 Emacs、vi,还有UltraEdit、EmEditor等,目前还被广泛使用。

   上述编译器以及编辑器都没能解决代码基本靠手写的问题,因此集成、可视化的开发环境被提上日程。集成开发环境减少了开发程序所付出的时间、金钱以及脑细 胞,只要轻敲几个键,一整段代码就可以使用了。在这方面,典型的如Macromedia的Dreamweaver和Microsoft的Visual Studio .Net。

   Dreamweaver可以根据用户的排版方式自动生成HTML代码,最新的Dreamweaver MX2004更是将主流网页服务器脚本和数据库开发结合在一起,这样普通人也可通过它设计出个性的站点。Visual Studio .Net则更为强大,其拥有的众多特性,如注解报告、命令窗口、部署工具、文档导航等,使程序员开发和维护一个项目更加容易。

   各种编程工具虽然极大地解放了程序员的双手,但重要的代码组合还是需要手工完成。人们梦想着有一天能够不再挥动双手而自由翱翔在程序的海洋里,而这一梦想也正在逐步变为现实——

   自动编码初级阶段

   不管是OlivaNova还是IBM的Rational,在生成代码之前都需要用特定的语言建立一个软件模型。因此,与其说它们是自动编程工具,还不如说是辅助程序员开发的快速编码工具,并且仅仅处于“自动编码”的初级阶段。

   为什么这样说呢?这是由于用此类自动编码软件所生成的代码很大程度上只是一些原型,往往可控性较差,真正有用、实用的东西还是需要人工实现。CT宣称OlivaNova所写出来的代码的错误只有手工编程的7%,虽然很少,但还是会有错误。

   既然这样,我们使用OlivaNova打倒比尔的梦想是不能实现了。但从中可以看到,未来单纯的编码工作将逐渐消失,对软件工程的掌握会成为程序员这一行当的必需,否则真有丢掉饭碗的危险。

   (上海拿破盾)(jy23y01)

   编者按:作为普通人的我们也不必灰心,因为人们对自动编程的研究是无止境的,当人工智能取得长足发展,各种软件模型能够直接由具有人工智能的计算机建立之 时,自动编程就真正实现了。那时的我们,只需告诉计算机软件要实现的功能,就能够自动生成相应的代码,比尔·盖茨们再也不能从我们手中掠走分毫血汗 钱?.....

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容