隨著時(shí)間的流逝,程序員們發(fā)現(xiàn)了更新、更簡(jiǎn)單的工作方式,新的編程語言如雨后春筍般出現(xiàn),但只有少數(shù)編程語言能成為社區(qū)的新寵。這種進(jìn)步的一個(gè)副作用是一些古老的編程語言必然會(huì)跟歷史一樣被人們遺忘。如果一個(gè)編程語言無法隨著時(shí)間的推移提升其價(jià)值,那么它的用戶群終將會(huì)流失,并逐漸淡出人們的視線,或者成為更新一代編程語言的基礎(chǔ)。 最近,古老的 COBOL 編程語言上了熱搜。在 1960 年代和 1970 年代,它曾經(jīng)是許多美國銀行和政府機(jī)構(gòu)的首選的編程語言,但最終被更加簡(jiǎn)單有效的編程語言所取代。但是,使用 COBOL 構(gòu)建的系統(tǒng)仍然存在,當(dāng)一些政府機(jī)構(gòu)發(fā)現(xiàn)他們需要通過更新代碼來全面改革失業(yè)系統(tǒng)時(shí),才發(fā)現(xiàn)業(yè)內(nèi)沒有幾個(gè)開發(fā)人員可以熟練使用該編程語言。 滄海桑田,COBOL 早已物是人非。我們當(dāng)前的許多編程語言也注定會(huì)有相似的下場(chǎng)。本文中,我們將分析未來 20 內(nèi)最終會(huì)消失的 5 種編程語言。我知道這可能會(huì)傷害到那些正在使用這幾個(gè)編程語言的程序員的內(nèi)心,所以在開始介紹之前首先聲明下這只是我個(gè)人的看法和預(yù)測(cè)。 Ruby 在 1999 年發(fā)布后立即受到程序員們的熱捧,它能夠快速構(gòu)建應(yīng)用程序的特性給程序員留下了非常深刻的印象。緊隨其后,備受歡迎的 Ruby on Rails 框架于 2004 年發(fā)布,由于 Ruby 和 Rails 這兩個(gè)名稱在當(dāng)時(shí)幾乎成為了同義詞,因此 Ruby 很快地被推到了程序員最喜歡的編程語言排行榜首位。它經(jīng)歷了一個(gè)堅(jiān)實(shí)的十年,穩(wěn)居編程語言排行榜前列,一度成為眾人矚目的焦點(diǎn),但是最近的十年它并不好過,所以 Ruby 納進(jìn)了我的淘汰清單列表。 為什么 Ruby 會(huì)逐漸消退呢?導(dǎo)致其排名下降的因素之一是其執(zhí)行速度。由它構(gòu)建的應(yīng)用程序運(yùn)行速度往往比其他流行的編程語言,比如 JavaScript、Go 和 Python 構(gòu)建的應(yīng)用(在某些框架下)運(yùn)行速度慢。同時(shí)期下,后三者已經(jīng)發(fā)展到可以滿足當(dāng)時(shí)的需求,而 Ruby 在很多方面一直在原地踏步,沒有什么進(jìn)步。例如,讓 Ruby on Rails 名噪一時(shí)的 MVC 架構(gòu)在現(xiàn)在被很多編程人員看來是笨重和過時(shí)的。 考慮到 Visual Basic 是公認(rèn)的程序員最不喜歡的編程語言之一的事實(shí),將它包含在淘汰列表中是無可厚非的。它于 1991 年由微軟發(fā)布,作為構(gòu)建 Windows 的主要工具,確實(shí)實(shí)現(xiàn)了此目的,但多年來經(jīng)常出現(xiàn)問題。程序員使用 VB 進(jìn)行開發(fā)的熱情差距很大,隨著 2000 年 C#的發(fā)布,這種差距逐漸進(jìn)一步擴(kuò)大。由于 C#更加簡(jiǎn)潔,提供了更廣泛的功能,并且更適合于云服務(wù)和移動(dòng)開發(fā)(在當(dāng)前市場(chǎng)中扮演著重要角色),因此很多開發(fā)人員都放棄使用 VB 轉(zhuǎn)而投向 C#懷抱。最重要的是,似乎它的創(chuàng)建者也都無情地放棄了它,因?yàn)槲④浽硎舅麄儧]有進(jìn)一步發(fā)展它的計(jì)劃。 Haskell 是另一個(gè)古董級(jí)別的編程語言,它于幾十年前創(chuàng)建,在世紀(jì)之交前一直被使用。不幸的是,對(duì)于 Haskell 來說,屬于它的時(shí)代很快就要結(jié)束了。研究人員和學(xué)者大多將 Haskell 用于構(gòu)建程序,以對(duì)其工作進(jìn)行復(fù)雜的排列和外推計(jì)算,普遍認(rèn)為它很難學(xué)習(xí)。學(xué)習(xí)路徑困難必然導(dǎo)致非常有限的活躍用戶,而 Haskell 的上一個(gè)最新的穩(wěn)定版本是在 2010 年發(fā)布,這對(duì)于促進(jìn)它本身的發(fā)展無濟(jì)于事。 與 Visual Basic 命運(yùn)一樣,Perl 不被大部分使用它的開發(fā)人員所喜歡。在 Perl 于 1987 年開始流行時(shí),它被譽(yù)為是適合任何一個(gè)人的編程語言,無論你是編程的初學(xué)者還是專業(yè)人士都可以使用,同時(shí)還被宣傳可以用于各種各樣的場(chǎng)景。但是,1991 年 Python 的出現(xiàn),徹底粉碎了 Perl 主導(dǎo)編程世界的幻想。 盡管 Python 的語法相比 Perl 稍顯繁瑣,更加嚴(yán)格,但 Python 讓用戶使用腳本實(shí)現(xiàn)目標(biāo)的過程變得更加簡(jiǎn)單直接,這改變了當(dāng)時(shí)的游戲規(guī)則。Python 在 2000 年代開始讓 Perl 黯然失色,并一度成為編程入門的首選語言。在過去的 15 年中,Perl 的使用量一直在穩(wěn)步下降,我們看不到任何它將停止下滑的跡象。 Objective-C 與 Apple 的關(guān)系類似于運(yùn)動(dòng)相機(jī)與 GoPro 的密切聯(lián)系——兩者都是他們所屬公司專用的工具。盡管 Objective-C 已經(jīng)在 macOS、iOS 和 OS X 開發(fā)中使用了二十多年(1996 年至今)的時(shí)間,但如今已經(jīng)很少有程序員在使用該語言,因?yàn)?Swift 橫空出世了。 Swift 由 Apple 構(gòu)建并于 2014 年發(fā)布,旨在成為 macOS、iOS 及其他幾個(gè) Apple 相關(guān)平臺(tái)的新編碼標(biāo)準(zhǔn)。Obj-C 在很大程度上是基于復(fù)雜的 C 語言創(chuàng)建的,而 Swift 有效地刪除了這些復(fù)雜的元素,同時(shí)增加了一些新的功能特性,例如自動(dòng)內(nèi)存管理,對(duì) Cocoa Touch 的支持以及類型安全的集成。 Swift 設(shè)法實(shí)現(xiàn)和維護(hù)了較高的語言穩(wěn)定性和用戶采用率,因?yàn)?Apple 公司仍在堅(jiān)持重寫 Obj-C 庫,以使舊語言的使用者可以很容易地進(jìn)行過渡。盡管仍然有很多關(guān)于這兩種選擇哪個(gè)更好的討論,但當(dāng)前的趨勢(shì)表明,Objective-C 終將被淘汰。 盡管上述提到的語言似乎都處于下降趨勢(shì),但不能保證它們最終一定會(huì)消失。如果他們的創(chuàng)造者和社區(qū)投入足夠的精力來更新和維護(hù)它們,添加新功能以及有用的特性,這些編程可能會(huì)卷土重來,恢復(fù)生命力。但事實(shí)是廣大程序員更有可能繼續(xù)涌向更新更好的選擇。 如果你正在考慮開始學(xué)習(xí)哪種語言,那么有許多因素需要考慮。如果你只是將編程當(dāng)做一種興趣愛好,你可以聆聽一下自己內(nèi)心并選擇最能激發(fā)你興趣的那個(gè)來學(xué)習(xí),即便所選的編程語言不再被廣泛使用甚至面臨淘汰。另一方面,如果你正在從事編程相關(guān)的工作,那么不應(yīng)該只選擇最流行的編程語言,也不應(yīng)該賭一把選擇未來可能會(huì)成為最流行的編程語言。而應(yīng)該通過仔細(xì)對(duì)比各個(gè)編程語言的功能特性,市場(chǎng)需求以及可見的未來增長潛力等因素后做出選擇,這才是明智之舉。 https:///articles/5-coding-languages-that-will-disappear-in-10-years |
|