為了辦公便捷和效率提升,新的程式語言如雨後春筍般出現,但只有少數程式語言才能成為新寵。
這種進步的一個副作用是一些古老的程式語言必然會跟歷史一樣被人們遺忘。
如果一個程式語言不能與時俱進,那使用者群一定會流失。
有人記得COBOL 程式語言嗎?可能很多人都不知道這門語言。
其實在1960 年代和 1970 年代,它是許多美國銀行和政府機構的首選的程式語言,但最終現在哪裡還能見到它的身影?
等一些政府機構發現他們需要透過更新程式碼來全面改革失業系統時,才發現業內沒有幾個開發人員可以熟練使用該程式語言。
當前的許多程式語言也可能會有相似的下場。
今天讓我們大膽分析一下:未來20年內最終會消失的 5 種程式語言。
本預測純屬臆測,如有雷同,深感不幸。但也不要當真啊,純屬臆測,指不定啥時候迎來第二春。
Ruby
Ruby 在 1999 年釋出後立即受到程式設計師們的熱捧,它能夠快速構建應用程式的特性給程式設計師留下了非常深刻的印象。
緊隨其後,備受歡迎的 Ruby on Rails 框架於 2004 年釋出,由於 Ruby 和 Rails 這兩個名稱在當時幾乎成為了同義詞,因此 Ruby 很快地被推到了程式設計師最喜歡的程式語言排行榜首位。
它經歷了一個堅實的十年,穩居程式語言排行榜前列,一度成為眾人矚目的焦點,但是最近的十年它並不好過,所以 Ruby 納進了淘汰清單列表。
為什麼 Ruby 會逐漸消退呢?
導致其排名下降的最重要的因素之一是其執行速度。
由它構建的應用程式執行速度往往比其他流行的程式語言,比如 JavaScript、Go 和 Python 構建的應用(在某些框架下)執行速度慢。
同時期下,後三者已經發展到可以滿足當時的需求,而 Ruby 在很多方面一直在原地踏步,沒有什麼進步。
例如,讓 Ruby on Rails名噪一時的MVC架構。其實現在看起來多多少少都有點過時。
Visual Basic
Visual Basic 是公認的程式設計師最不喜歡的程式語言之一,沒人反對吧?(反對就是你對!!)
它是微軟在1991年釋出的,作為構建 Windows 的主要工具,目標是實現了,但最近問題也不少。
大家使用 VB 進行開發的熱情差距也很大,隨著 2000 年 C#的釋出,這種差距逐漸進一步擴大。
由於 C#更加簡潔,提供了更廣泛的功能,並且更適合於雲服務和移動開發(在當前市場中扮演著重要角色),因此很多開發人員都放棄使用 VB 轉而投向 C#懷抱。
C#真的很厲害,有基礎的小夥伴可以拓展學習一下,大雄最近在研究這個,看著看著,就跪下了。
最重要的是,似乎它的建立者也都無情地放棄了它,因為微軟曾表示他們沒有進一步發展它的計劃。(微軟有時候,挺不是玩意兒的!)
Haskell
Haskell 是另一個古董級別的程式語言,它於幾十年前建立,在90年代一直被使用。
對於 Haskell 來說,屬於它的時代很快就要結束了。
研究人員和學者大多將 Haskell 用於構建程式,以對其工作進行復雜的排列和外推計算,但是學起來很難!
難學必然導致非常有限的活躍使用者,其實 Haskell 的上一個最新的穩定版本是在 2010 年釋出,這已經於事無補了。
Perl
與 Visual Basic 命運一樣,Perl 也很不討喜。
在 Perl 於 1987 年開始流行時,當時被譽為是適合任何一個人的程式語言,無論你是程式設計的初學者還是專業人士都可以使用,同時還被宣傳可以用於各種各樣的場景。
但是,1991 年Python出現了!!
儘管 Python 的語法相比 Perl 稍顯繁瑣,更加嚴格,但 Python 讓使用者使用指令碼實現目標的過程變得更加簡單直接,改變遊戲規則了。
Python 在 2000 年代開始讓 Perl 黯然失色,並一度成為程式設計入門的首選語言。
在過去的 15 年中,Perl的使用量一直在穩步下降,而且也多半會持續下降,有點摟不住。
Objective-C
Objective-C 與 Apple 的關係類似於運動相機與 GoPro 的密切聯絡——兩者都是他們所屬公司專用的工具。
儘管 Objective-C 已經在 macOS、iOS 和 OS X 開發中使用了二十多年(1996 年至今)的時間。
但如今已經很少有程式設計師在使用該語言,因為Swift橫空出世了。
Swift 由 Apple 構建並於 2014 年釋出,旨在成為 macOS、iOS 及其他幾個 Apple 相關平臺的新編碼標準。
Obj-C 在很大程度上是基於複雜的C語言建立的,而 Swift 就刪除了這些複雜的元素,同時增加了一些新的功能特性。
例如自動記憶體管理,對 Cocoa Touch 的支援以及型別安全的整合。
Swift 設法實現和維護了較高的語言穩定性和使用者採用率,因為 Apple 公司仍在堅持重寫 Obj-C 庫,以使舊語言的使用者可以很容易地進行過渡。
儘管仍然有很多關於這兩種選擇哪個更好的討論,但當前的趨勢來看的話,Objective-C 會有一天被淘汰。
總 結
儘管上述提到的語言似乎都處於下降趨勢,但不能保證它們最終一定會消失。
如果創造者和社群投入足夠的精力來更新和維護它們,新增新功能以及有用的特性,這些程式設計可能會捲土重來,恢復生命力。
但事實這種價效比不是很高,肯定會有更新的,更好的選擇。
最後致小夥伴們:
如果小夥伴正在考慮開始學習哪種語言,那麼有許多因素需要考慮;
如果小夥伴只是將程式設計當做一種興趣愛好,聆聽一下自己內心並選擇最能激發你興趣的那個來學習,即便所選的程式語言不再被廣泛使用甚至面臨淘汰;
如果小夥伴正在從事程式設計相關的工作,那麼不應該只選擇最流行的程式語言,要深耕,深耕,深耕(主要的事情說三遍);
仔細對比各個程式語言的功能特性,市場需求以及可見的未來增長潛力等因素後做出選擇,這才是明智之舉。