<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          5種將死的編程語言

          共 4607字,需瀏覽 10分鐘

           ·

          2022-02-12 22:20

          譯文:http://www.codeceo.com/article/5-die-programming-language.html
          原文:5 Programming Languages Marked for Death
          https://insights.dice.com/2014/10/09/5-programming-languages-marked-for-death/
          譯者:碼農(nóng)網(wǎng)?–?小峰


          大家好,歡迎來到 Crossin的編程教室 !

          現(xiàn)在的開發(fā)人員都趨向于使用新的編程語言,那么舊的編程語言呢?它們的前途一般是這樣兩種:仍然可以使用,但逐漸不受大家歡迎;直接完全死去。和之前的十佳最受歡迎的編程語言相反,本文我們預(yù)測以下這幾種編程語言面臨著死亡威脅:

          Perl

          曾幾何時,幾乎每個人都在使用Perl語言編程。但是那些經(jīng)常使用的人慢慢地發(fā)現(xiàn),關(guān)于這個Perl語言似乎總是有點不對勁。至少我知道有這么個叫做“piecemeal”的編程語言,它的創(chuàng)造者似乎就只是將這個功能堆在另一個功能上面而已,并沒有好好考慮將它們結(jié)合在一起。

          事實上,甚至是它的創(chuàng)造者也不得不承認這種編程語言是有問題的。經(jīng)過完整地改造之后,現(xiàn)在的開發(fā)工作開始傾向于使用Perl6,這個大概是在2000年的時候。至于Perl?儼然已經(jīng)銷聲匿跡了!所以完全沒有必要去學(xué)習(xí)它了。順便說一句,下面這個“Goodbye World”就是用Perl寫的:

          #!/usr/bin/perl
          print?“Content-type:?text/html\n\n”;
          print?“Goodbye,?world!\n”;

          上面這個例子會出來一個網(wǎng)頁。現(xiàn)在的Perl,由于可以作為CGI腳本語言,所以使用的最廣泛的是在生成web頁面上。但是為了適應(yīng)時代的變化,我們最好還是將Perl語言“棄之如敝履”。

          Ruby

          關(guān)于Ruby,可以這么唱“十年之后,我不認識你你不屬于我……”。因為就在10年前,Ruby語言可謂是風(fēng)靡一時。它出生于1995年,5年左右達到它的鼎盛時期。如果你經(jīng)常使用的話,絕對會義無反顧地愛上它。但是,像我們這些學(xué)著C語言風(fēng)格長大的孩子在學(xué)習(xí)Ruby時往往會覺得有點囧。

          下面是用Ruby寫的“Goodbye World”:

          puts?‘Bye?bye,?Miss?American?Ruby!?Drove?my?Chevy?to?the?Levie…’
          puts ’2011 was the day that Ruby died, yeah…’

          下面是一個用于計算階乘的例子:

          def fact(n)
          ?if n == 0
          ? ?1
          ?else
          ? ?n * fact(n-1)
          ?end
          end
          puts fact(ARGV[0].to_i)

          我測試了這個例子,來計算1000的階乘。下面是結(jié)果(由于篇幅限制,中間略過了2569個數(shù)字):

          ruby fact.rb 1000
          40238726007709377354370243392300…0000000

          從各方面來看,Ruby都很好,幾乎是一片贊譽聲……除了Twitter。?在2011年4月,Twitter宣稱他們已經(jīng)將幾乎大部分的代碼都改寫過了,以便不必使用Ruby和它的web框架——Ruby on Rails,據(jù)他們所說這個平臺非常之低效。不過,我想說的是,也正是那一天起,Ruby開始走下坡路,使用的人數(shù)也是越來越少。

          Visual Basic.NET

          十年前,我應(yīng)聘到一個需要重寫大量代碼的公司,名字我已經(jīng)忘記了,主要工作就是將VB6轉(zhuǎn)換為Visual basic.NET。大概就只干了一兩個月吧,我就跳槽了:真心太痛苦了。

          微軟鐘愛于BASIC編程語言的擴展可以一路追溯到1991年,那時他們剛剛采購了來自Alan Cooper的一個非常酷(對于那個時候而言)的可視化編程設(shè)計。Alan Cooper初期使用的是別的編程語言,但是比爾蓋茨讓他換成BASIC語言,因為蓋茨認為那是當時最為簡單的編程語言。于是乎,大名鼎鼎的Visual Basic,就從BASIC中衍生出來——對象這一概念以及新的編程技術(shù)問世了。

          后面又發(fā)生了一些很有意思的事情。Borland Delphi的創(chuàng)造引領(lǐng)者,Anders Hejlsberg也到微軟工作,并且引領(lǐng)創(chuàng)建了一個新的編程語言——C#。這種編程語言非常類似于Java語言。剛開始的學(xué)習(xí)或許有點難,但是一旦上手,你絕對會對它愛不釋手。C#很快就成為了微軟的旗艦編程語言。現(xiàn)在的話,在軟件行業(yè)中,有很多很多需要C#的工作崗位,不少都是高薪聘用的。

          雖然針對自己的CLR運行,微軟創(chuàng)建了C#,但是它的工程師們另外還創(chuàng)建了一個蓋茨深愛的BASIC語言版本,命名為Visual Basic.NET。該編程語言借用了BASIC語言的語法,但是它的編碼方法卻與C#相似。雖然Visual Basic.NET也在發(fā)展,但是優(yōu)勝劣汰總是不可避免的——大家都選擇了C#,于是Visual Basic.NET就成為了明日黃花。

          下面是摘自微軟網(wǎng)頁上的一段Visual Basic.NET程序:

          ‘ Allow easy reference to the System namespace classes.
          Imports System
          ‘ This module houses the application’s entry point.
          Public Module modmain
          ? ‘ Main is the application’s entry point.
          ? Sub Main()
          ? ? ‘ Write text to the console.
          ?????Console.WriteLine?(“Hello?World?using?Visual?Basic!”)
          ? End Sub
          End Module

          (這里的“Hello World”也可以替換成“Goodbye World”,這個沒關(guān)系。)

          Adobe Flash和AIR

          從技術(shù)上講,這些都是平臺,而非編程語言。我之所以將它們包含進來是因為如果你想要使用它們,就必須安裝Adobe自己的ECMAScript版本,即ActionScript。ActionScript是JavaScript(當前最流行的編程語言之一,因為它能用于所有的瀏覽器)的一個近親。ActionScript在ECMAScript(這是JavaScript實現(xiàn)標準的官方名稱)中增加了一些細節(jié);但是除了Adobe Flash,其他地方幾乎沒有ActionScript的用武之地。

          你使用Flash不?喬布斯非常討厭它,并且也不允許iPhone使用它。然后隨著iPhone(以及隨后的iPad)的逐漸普及,Web開發(fā)人員不得不創(chuàng)建不必依賴于Flash的網(wǎng)站。那些以ActionScript為生的開發(fā)人員也不得不紛紛下崗。(我曾經(jīng)看到過一個Flash開發(fā)人員指責(zé)另一個JavaScript開發(fā)人員毀了他的職業(yè)生涯。)

          Adobe也曾試圖通過AIR以求得其編程平臺的一線生機,于是配建了一個用于構(gòu)建AIR app的工具,稱為Flex。至于AIR,許多人都說,這是一場災(zāi)難。不過我們目前也不知道為什么Adobe會推出AIR,可能是想用AIR取代Flash?也可能是想要AIR和Flash相親相愛共同發(fā)展?

          記得有一段時間,得益于Twitter平臺——TweetDeck(要求用戶在電腦上安裝AIR運行時)的使用,AIR很是紅火了一陣子。那時大概有數(shù)以百萬計的pc AIR應(yīng)用被開發(fā)出來,只是后來Twitter在2011年買了TweetDeck之后,又改寫本地代碼取代了AIR。于是乎,AIR的輝煌就到此為止。

          隨著Flash和AIR的逐漸逝去,Adobe的ActionScript也開始向世界吻別。下面是一些用ActionScript寫的代碼示例。

          package {
          import flash.display.*;
          import flash.text.*;
          public class HelloWorld extends Sprite {
          ???private?var?greeting:TextField?=?new?TextField();
          public function HelloWorld() {
          ?????greeting.text?=?“Hello?World!”;
          ? ? greeting.x = 100;
          ? ? greeting.y = 100;
          ? ? addChild(greeting);
          ? }
          }
          }

          (你可能會發(fā)現(xiàn)這與JavaScript非常相似,都使用var、function和new,并且也使用小數(shù)點來訪問成員變量。)

          Delphi’s Object Pascal

          首先我得向我曾經(jīng)的好伙伴Delphi表示歉意,因為我不得不公布Object Pascal的“死訊”。well,Delphi(用于發(fā)Object Pascal的工具)歷經(jīng)變遷之后,依然茍延殘喘著(它起源于Borland公司,現(xiàn)在抱著Embarcadero公司的大腿)。

          早先Delphi和它的Object Pascal語言確實給我們提供了一個良好的工作環(huán)境:雖然有點啰嗦,但是編譯器很快,而且相比Visual Basic(這里指的是pre-Visual Basic.NET,1995年左右),創(chuàng)建Windows程序更容易。

          但是它的優(yōu)勢并沒有持續(xù)下去。也很難說是什么原因,因為這個平臺真心是不錯的。就在這時,Borland公司開始在其Delphi的產(chǎn)品線上支持C#和C++。發(fā)展到后來,Borland公司甚至直接將Delphi賣給了Embarcadero公司,然后Embarcadero公司繼續(xù)使用Delphi開發(fā)產(chǎn)品。話說,它做得相當不錯,但是重點再也不是Pascal了。當然,你依然可以用Pascal編程,但是幾乎沒人走這條路了。事實上,我們可以使用Delphi建立許多不同的平臺,包括iOS、Android,以及即將到來的Linux操作系統(tǒng)。

          但是,如果你去Embarcadero公司的網(wǎng)站看看,你會發(fā)現(xiàn)他們主要是在促進Delphi’s C++?的支持。因此,換言之就是,Object Pascal已然逝去了。寫到這里,我不禁悲從心來,因為我花了很多很多時間來學(xué)習(xí)Pascal語言,特別是Delphi’s Object Pascal。但是沒辦法,現(xiàn)實就是如此殘酷,不轉(zhuǎn)行就只能餓死。

          下面請看Object Pascal的代碼:

          program HelloWorld;
          begin
          ? ?writeln(‘You say goodbye.’)

          譯者注:以上觀點僅代表作者個人觀點,請文明禮貌按秩序吐槽。

          如果文章對你有幫助,歡迎轉(zhuǎn)發(fā)/點贊/收藏~

          _往期文章推薦_

          用Python做了個編程語言20年的動態(tài)排行榜




          如需了解付費精品課程教學(xué)答疑服務(wù)
          請在Crossin的編程教室內(nèi)回復(fù): 666

          瀏覽 31
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  天天爽av| 黄色一级片免费播放 | 亚洲天堂网站 | 特级特黄A片一级一片 | 免费 无码 国产免费 |