譯者 | 王坤祥
策劃 | 小智
本文作者從自己的觀點出發,介紹了未來 20 年內可能消失的五種程式語言,並給出了具體的原因。最後對想要學習程式設計的初學者給出了學習建議。
隨著時間的流逝,程式設計師們發現了更新、更簡單的工作方式,新的程式語言如雨後春筍般出現,但只有少數程式語言能成為社群的新寵。這種進步的乙個***是一些古老的程式語言必然會跟歷史一樣被人們遺忘。如果乙個程式語言無法隨著時間的推移提公升其價值,那麼它的使用者群終將會流失,並逐漸淡出人們的視線,或者成為更新一代程式語言的基礎。
最近,古老的cobol 程式語言上了熱搜。在 1960 年代和 1970 年代,它曾經是許多美國銀行和**機構的首選的程式語言,但最終被更加簡單有效的程式語言所取代。但是,使用 cobol 構建的系統仍然存在,當一些**機構發現他們需要通過更新**來全面改革失業系統時,才發現業內沒有幾個開發人員可以熟練使用該程式語言。
滄海桑田,cobol 早已物是人非。我們當前的許多程式語言也注定會有相似的下場。本文中,我們將分析未來 20 內最終會消失的 5 種程式語言。我知道這可能會傷害到那些正在使用這幾個程式語言的程式設計師的內心,所以在開始介紹之前首先宣告下這只是我個人的看法和**。
1 ruby
ruby 在 1999 年發布後立即受到程式設計師們的熱捧,它能夠快速構建應用程式的特性給程式設計師留下了非常深刻的印象。緊隨其後,備受程式設計客棧歡迎的 ruby on rails 框架於 2004 年發布,由於 ruby 和 rails 這兩個名稱在當時幾乎成為了同義詞,因此 ruby 很快地被推到了程式設計師最喜歡的程式語言排行榜首位。它經歷了乙個堅實的十年,穩居程式語言排行榜前列,一度成為眾人矚目的焦點,但是最近的十年它並不好過,所以 ruby 納進了我的淘汰清單列表。
為什麼 ruby 會逐漸消退呢?導致其排名下降的因素之一是其執行速度。由它構建的應用程式執行速度往往比其他流行的程式語言,比如 j**ascript、go 和 python 構建的應用(在某些框架下)執行速度慢。同時期下,後三者已經發展到可以滿足當時的需求,而 ruby 在很多方面一直在原地踏步,沒有什麼進步。例如,讓 ruby on rails 名噪一時的 mvc 架構在現在被很多程式設計人員看來是笨重和過時的。
2 visual basic
考慮到 visual basic 是公認的程式設計師最不喜歡的程式語言之一的事實,將它包含在淘汰列表中是無可厚非的。它於 1991 年由微軟發布,作為構建 windows 的主要工具,確實實現了此目的,但多年來經常出現問題。程式設計師使用 vb 進行開發的熱情差距很大,隨著 2000 年 c#的發布,這種差距逐漸進一步擴大。由於 c#更加簡潔,提供了更廣泛的功能,並且更適合於雲服務和移動開發(在當前市場中扮演著重要角色),因此很多開發人員都放棄使用 vb 轉而投向 c#懷抱。最重要的是,似乎它的建立者也都無情地放棄了它,因為微軟曾表示他們沒有進一步發展它的計畫。
3haskell
haskell 是另乙個古董級別的程式語言,它於幾十年前建立,在世紀之交前一直被使用。不幸的是,對於 haskell 來說,屬於它的時代很快就要結束了。研究人員和學者大多將 haskell 用於構建程式,以對其工作進行複雜的排列和外推計算,普遍認為它很難學習。學習路徑困難必然導致非常有限的活躍使用者,而 haskell 的上乙個最新的穩定版本是在 2010 年發布,這對於促進它本身的發展無濟於事。
4 perl
與 visual basic 命運一樣,perl 不被大部分使用它的開發人員所喜歡。在 perl 於 1987 年開始流行時,它被譽為是適合任何乙個人的程式語言,無論你是程式設計的初學者還是專業人士都可以使用,同時還被宣傳可以用於各種各樣的場景。但是,1991 年 python 的出現,徹底粉碎了 perl 主導程式設計世界的幻想。
儘管 python 的語法相比 perl 稍顯繁瑣,更加嚴格,但 python 讓使用者使用指令碼實現目標的過程變得更加簡單直接,這改變了當時的遊戲規則。python 在 2000 年代開始讓 perl 黯然失色,並一度成為程式設計入門的首選語言。在過去的 15 年中,perl 的使用量一直在穩步下降,我們看不到任何它將停止下滑的跡象。
5 objective-c
objective-c 與 apple 的關係類似於運動相機與 gopro 的密切聯絡——兩者都是他們所屬公司專用的工具。儘管 objective-c 已經在 macos、ios 和 os x 開發中使用了二十多年(1996 年至今)的時間,但如今已經很少有程式設計師在使用該語言,因為 swift 橫空出世了。
swift 由 apple 構建並於 2014 年發布,旨在成為 mamaunodcos、ios 及其他幾個 apple 相關平台的新編碼標準。obj-c 在很大程度上是基於複雜的 c 語言建立的,而 swift 有效地刪除了這些複雜的元素,同時增加了一些新的功能特性,例如自動記憶體管理,對 cocoa touch 的支援以及型別安全的整合。
swift 設法實現和維護了較高的語言穩定性和使用者採用率,因為 apple 公司仍在堅持重寫 obj-c 庫,以使舊語言的使用者可以很容易地進行過渡。儘管仍然有很多關於這兩種選擇哪個更好的討論,但當前的趨勢表明,objective-c 終將被淘汰。
6總 結
儘管上述提到的語言似乎都處於下降趨勢,但不能保證它們最終一定會消失。如果他們的創造者和社群投入足夠的精力來更新和維護它們,新增新功能以及有用的特性,這些程式設計可能會捲土重來,恢復生命力。但事實是廣大程式設計師更有可能繼續湧向更新更好的選擇。
如果你正在考慮開始學習哪種語言,那麼有許多因素需要考慮。如果你只是將程式設計當做一種興趣愛好,你可以聆聽一下自己內心並選擇最能激發你興趣的那個來學習,即便所選的程式語言不再被廣泛使用甚至面臨淘汰。另一方面,如果你正在從事程式設計相關的工作,那麼不應該只選擇最流行的程式語言,也不應該賭一把選擇未來可能會成為最流行的程式語言。而應該通過仔細對比各個程式語言的功能特性,市場需求以及可見的未來增長潛力等因素後做出選擇,這才是明智之舉。
本文標題: 十年後可能消失的五種程式語言
本文位址: /news/roll/351731.html
十年前 十年後
父母 十年前我們是父母的孩子 十年後我們是孩子的父母 十年前我不知道家的溫馨 十年後我才體會家的溫暖 十年前我渴望離家去遠方 十年後我渴望從遠方回家 十年前我對父母大吵大嚷 十年後我希望父母再罵我一次 愛情 十年前你是我的同桌 十年後你成了別人的妻子 十年前我唱著同桌的你 十年後我想著同桌的你 十年...
十年前 十年後
父母 十年前我們是父母的孩子 十年後我們是孩子的父母 十年前我不知道家的溫馨 十年後我才體會家的溫暖 十年前我渴望離家去遠方 十年後我渴望從遠方回家 十年前我對父母大吵大嚷 十年後我希望父母再罵我一次 愛情十年前你是我的同桌 十年後你成了別人的妻子 十年前我唱著同桌的你 十年後我想著同桌的你 十年前...
十年前,十年後
雖然我尚未踏上社會,但是該漫畫字裡行間的心情卻能夠體會,發出來和大家共勉。自水木社群 十年前的我們,都在追求學業的旅途上,十年後的我們,都在追求生計的道路裡。容顏轉換,心態改變,夢想搖曳 曾經,生活再艱難,我們總會相信,只要努力就一定會成功 曾經,懷抱著崇高理想的我們,信心滿滿地走進陌生的城市,只為...