如今,开发人员越来越倾向于使用新的编程语言,那么旧语言呢?他们的未来一般是两种方式之一:他们仍然可以使用,但逐渐不受大家欢迎;否则他们将彻底死去。与之前的十大最佳编程语言相反,在本文中我们预测以下编程语言正面临死亡威胁:Perl曾几何时,几乎每个人都使用Perl语言编程。但是使用它的人往往会慢慢发现,Perl语言似乎总有不对的地方。至少我知道一种称为“piecemeal”的编程语言,其创建者似乎只是将此功能叠加在另一个之上,而没有真正考虑将它们结合起来。事实上,即使是它的创造者也不得不承认这种编程语言是有问题的。彻底转型之后,现在的开发工作开始倾向于使用Perl6,大概是2000年的时候吧。至于Perl呢?好像不见了!所以完全没必要学。顺便说一句,下面的“再见世界”是用Perl写的:#!/usr/bin/perlprint"Content-type:text/html\n\n";打印“再见,世界!\n”;上面这个例子会出来一个网页。现在Perl因为可以作为CGI脚本语言使用,在生成网页方面应用最为广泛。但是为了适应时代的变化,我们最终还是“像弃鞋一样抛弃了Perl语言”。Ruby关于Ruby,你可以唱“十年后,我不认识你,你不属于我……”。因为就在10年前,Ruby语言还风靡一时。它诞生于1995年,并在大约5年的时间里达到了鼎盛时期。如果您经常使用它,您会毫不犹豫地爱上它。然而,我们这些学习C语言风格长大的人在学习Ruby时往往会觉得有点尴尬。这是用Ruby编写的“再见世界”:puts'Byebye,MissAmericanRuby!DrovemyChevytotheLevie...'puts'2011wasthedaythatRubydied,yeah...'这是计算阶乘的示例:deffact(n)ifn==01elsen*fact(n-1)endendputsfact(ARGV[0].to_i)我测试了这个示例以计算1000的阶乘。结果如下(由于空间原因,跳过了2569个数字):ruby??fact.rb100040238726007709377354370243392300...0000000Ruby各方面都很好,几乎赞不绝口...除了Twitter。2011年4月,Twitter宣布他们已经重写了几乎所有代码,以便不必使用Ruby及其Web框架RubyonRails,他们认为RubyonRails效率非常低。然而,我想说的是,从那天起,Ruby开始没落,用它的人越来越少。VisualBasic.NET十年前,我应聘到一家需要重写大量代码的公司,名字忘记了,主要工作是将VB6转换成Visualbasic.NET。我可能只工作了一两个月,然后就辞职了:真的很痛苦。Microsoft对BASIC编程语言扩展的热爱可以追溯到1991年,当时他们刚刚从AlanCooper那里获得了一个非常酷(当时)的可视化编程设计。AlanCooper一开始使用的是另一种编程语言,但比尔盖茨要求他改用BASIC语言,因为盖茨认为这是当时最简单的编程语言。于是乎,大名鼎鼎的VisualBasic就是从BASIC——对象的概念和新的编程技术中衍生出来的。然后发生了一些有趣的事情。BorlandDelphi的创建者AndersHejlsberg也曾到微软工作,并率先创建了一种新的编程语言——C#。这种编程语言与Java语言非常相似。刚开始可能会有点难学,但一旦上手,就爱不释手。C#迅速成为微软的旗舰编程语言。现在,在软件行业,有很多很多工作需要C#,而且很多都是高薪聘请的。尽管Microsoft为自己的CLR运行时创建了C#,但其工程师还创建了盖茨钟爱的BASIC语言的一个版本,名为VisualBasic.NET。这种编程语言借鉴了BASIC语言的语法,但其编码方式与C#类似。虽然VisualBasic.NET也在发展,但是优胜劣汰总是不可避免的——大家都选择了C#,所以VisualBasic.NET已经成为过去式了。以下是Microsoft网页上VisualBasic.NET程序的摘录:“AlloweasyreferencetotheSystemnamespaceclasses”。World”也可以换成“GoodbyeWorld”,没关系。)Adob??eFlash和AIR从技术上讲,这些是平台,而不是编程语言。我把它们包括在内是因为如果你想安装Adob??e自己的ECMAScript版本,称为ActionScript,必须安装使用它们。ActionScript是JavaScript的近亲(目前是最流行的编程语言之一,因为它适用于所有浏览器)。ActionScript为ECMAScript(JavaScript实现标准的官方名称)添加了一些细节;但在Adob??e之外Flash,在其他任何地方都很少使用ActionScript。你使用闪存吗?乔布斯讨厌它,不允许iPhone使用它。然后随着iPhone(以及后来的iPad)的日益普及,网络开发人员不得不创建不必依赖Flash的网站。靠ActionScript谋生的开发人员也不得不被解雇。(我曾经看到一位Flash开发人员指责另一位JavaScript开发人员毁了他的职业生涯。)Adobe也试图使用AIR为其编程平台寻找生命线,因此它构建了一个用于构建AIR应用程序的工具。名为Flex的工具。至于AIR,很多人说这是一场灾难。但是我们不知道为什么Adobe会推出AIR,也许是想用AIR来代替Flash?或者您希望AIR和Flash相爱并共同发展?记得有一段时间,由于使用了推特平台——TweetDeck(要求用户在电脑上安装AIRruntime),AIR一度非常火爆。当时开发的pcAIR应用大概有数百万,但是2011年推特收购了TweetDeck之后,重写了原生代码来替代AIR。于是乎,AIR的辉煌到此为止。随着Flash和AIR的消亡,Adobe的ActionScript正在与世界接吻。下面是一些用ActionScript编写的代码示例。包{importflash.display.*;importflash.text.*;publicclassHelloWorldextendsSprite{privatevargreeting:TextField=newTextField();publicfunctionHelloWorld(){greeting.text="HelloWorld!";greeting.x=100;greeting.y=100;addChild(greeting);}}}(你可能会觉得这和JavaScript很像,都是用var,function,new,也用小数点访问成员变量。)Delphi'sObjectPascal首先要对我的好朋友Delphi说抱歉,因为我不得不宣布ObjectPascal的“死亡”。好吧,Delphi(开发ObjectPascal的工具)历经变迁依然健在(起源于Borland,现在抱的是Embarcadero的大腿)。早期的Delphi及其ObjectPascal语言确实为我们提供了良好的工作环境:虽然有点罗嗦,但编译器速度很快,相对于VisualBasic(这里指的是VisualBasic.NET之前,1995年左右),创建Windows程序是更轻松。但它的统治地位并没有持续多久。很难说为什么,因为这个平台真的很好。这时,Borland开始在其Delphi产品线中支持C#和C++。后来Borland甚至将Delphi直接卖给了Embarcadero,而后Embarcadero继续使用Delphi开发产品。话虽这么说,它做得很好,但重点不再放在Pascal上了。当然,您仍然可以使用Pascal编程,但几乎没有人再这样做了。事实上,我们可以使用Delphi构建许多不同的平台,包括iOS、Android,以及即将推出的Linux操作系统。但是,如果你去Embarcadero公司的网站,你会发现他们主要是在宣传Delphi对C++的支持。所以,换句话说,ObjectPascal已经死了。写到这里,我不禁感到难过,因为我花了很多时间学习Pascal语言,尤其是Delphi的ObjectPascal。可是没办法,现实就是这么残酷,再不转行,就只能饿死了。请看下面ObjectPascal的代码:programHelloWorld;beginwriteln('Yousaygoodbye.')译者注:以上观点仅代表作者个人观点,请文明有序投诉。翻译链接:http://www.codeceo.com/article/5-die-programming-language.html英文原文:5ProgrammingLanguagesMarkedforDeath译文作者:码农-小风
