2017年最受歡迎的編程語言

2017-10-13 1367 0 編輯:深正互聯 來源:互聯網

概述:今年,Java仍然是雇主們最需求的編程語言。和去年一樣,JavaScript繼續統治著程序員最常用的語言列表。但是,隨著流行的框架和物聯網(IoT)這一類技術趨勢的發展,某些專業語言的知名度得到了很大提高,而所謂的“函數式語言”也吸引了越來越多人的興趣。

科技不斷進步,隨著時間的推移,各種編程語言受歡迎程度也在不斷的發生著改變。這就是為什么人們會對討論這一類盤點編程語言受歡迎程度話題樂此不彼,通過盤點整理,人們會留意到新的發展趨勢,可以發現從工作列表到開發人員論壇活動等各種度量標準和資源。

今年,Java仍然是雇主們最需求的編程語言。和去年一樣,JavaScript繼續統治著程序員最常用的語言列表。但是,隨著流行的框架和物聯網(IoT)這一類技術趨勢的發展,某些專業語言的知名度得到了很大提高,而所謂的“函數式語言”也吸引了越來越多人的興趣。

微服務傾斜的背景

這些趨勢背后的另一個驅動力是微服務體系結構的不斷采用。“在八年前,流行的是整體項目。”New Relic APM公司的產品經理Neha Duggal如此談到。“現在人們轉向微服務,將應用程序的概念分解成可管理的部分。”這激發了人們對許多不同編程語言的興趣,包括在Java虛擬機(JVM)上運行的Scala、Kotlin和Apache Groovy等新語言。Neha說,微服務通常使用異步通信,而新語言通常比Java更善于處理這種通信。隨著可讓你使用任何基于jvm語言的Eclipse Vert等框架越來越受歡迎,這一趨勢將進一步加強。

雇主最需要的是哪些語言?

為了考察這一點,讓我們來仔細看看雇主目前正在網站上尋找的編程語言技能。我們統計了從2016年7月到2017年6月求職網站Indeed上關于軟件開發崗位上最常出現的語言技能,以及2017年6月Dice和CareerBuilder求職網站上IEEE Spectrum發布的語言需求列表,結果如下所示:

Languages-Chart-1.png

2017年最需要的語言

Java在這兩張表上都排在首位,“年復一年,Java仍然是最受歡迎的編程語言”Indeed公司高級副總裁Doug Gray說。“這并不奇怪,因為Java非常穩定,而且伸縮自如,這對于大公司來說尤其重要。”

事實上兩張列表非常相似,只有一些小的出入——.NET, SQL, Node.js, Swift和一些C語言的變體。但即使是這些微小的差異,也能夠反映出由于定位和方法的區別,結果會有所不同。Node.js沒有出現在IEEE列表里中,可能是因為JavaScript運行框架包含在JavaScript中;SQL位于Indeed列表的第6位,而在IEEE列表上它處于第16位,這大概是因為在IEEE中它被分為了Web和Mobile兩類。(IEEE的排名讓你可以通過各種過濾器來排序)。此外,有些人可能會說,JavaScript與其說是編程語言,不如說是腳本語言。

同樣值得注意的是,2017年的榜單中包括了去年十大雇主要求的語言中的8種,這表明編程工作需求相對穩定。關于Node.js受歡迎程度的提升的原因,這也可以解釋為什么JavaScript的受歡迎度從去年的第四名躍升到目前的第二名,那就是JavaScript運行框架在去年開始被廣泛應用于包括物聯網在內的多個領域,它也成為了今年Stack Overflow開發者調查所使用的最常用的框架。同樣的,Indeed列表中的.NET躍居到了第三的位置,那是因為它是從C和C++中分割出來的單獨條目,而在去年的榜單上C#、C++和C都是前10名。

雖然看起來前10名語言的地位非常穩固,但這并不意味著就不會產生一些新的變化了。“隨著物聯網和機器學習的融合,R和Python正在興起。”開發社區提供商DZone.com的市場總監Kellet Atkinson說。“‘大數據’是我們求職板報上出現頻率最高的搜索詞,而Python則是組成其最熱門的五種語言之一。”在IEEE的排名中,Python語言的發展速度最快,而R語言的發展速度排行第8。

程序員最常用哪些語言?

為了了解開發人員在使用方面最感興趣的語言,我們來看看RedMonk的編程語言排名,它的數據結合了GitHub的代碼提取和Stack Overflow的討論。此外,Stack Overflow對開發人員實際使用的語言進行了自己的開發調查:

Languages-Chart-2.png

2017年最常用的語言

這列表是否似曾相識?開發人員所使用的語言與雇主正在所尋找的相匹配,這是有一定道理的。(有一個例外,TypeScript出現在了Stack Overflow的列表中,由于它被編譯為JavaScript,所以它被包含在其它排名第一的JavaScript中)

程序員最喜歡哪些語言?

也許,更有趣的是開發人員真正喜歡的語言。根據New Relic的首席軟件工程師Todd West的說法,工程師們傾向于優先學習他們首先學習的語言,以及那些容易使用和提供尖端創新和快速性能的語言。Stack Overflow發不了對最受喜愛(most-loved),最想學習(most-wanted)和最令人害怕(most-dreaded)語言的統計結果:

Languages-Chart-3.png

2017年最喜歡的語言

很顯然,開發人員不僅經常使用JavaScript / TypeScript、Python和C#,而且實際上也喜歡它們。至于Rust,也許開發人員喜歡系統編程語言的速度,預防segfault的能力以及能保證線程安全。(對于為什么1980年的Smalltalk仍然如此受人喜愛,我們沒有什么可說的。)

哪些語言處于上升期?

作為coding bootcamp集團的首席執行官,Roshan Choxi很關注開發者在論壇上談論的內容,比如黑客新聞和Reddit的r/編程以及初學者們感興趣的內容。他說,“過去一年的新趨勢是函數式編程的影響力越來越大。”他指的是Haskell、Erlang、Elixir、Elm和Clojure等語言。(其中一些選擇出現在上面的列表中。)

“這似乎是開發人員今天面臨的并發性、狀態管理和可靠性等諸多常見問題的一個答案,JavaScript可能與此有關。”Roshan解釋道。“雖然它并不是一種功能語言,但它確實強調了功能的第一性,并且有一些流行的項目支持將函數式編程特性引入到JavaScript代碼中,Redux介紹了消息傳遞的概念,TypeScript允許您插入靜態類型,這兩者在函數語言中都很常見。”

多語言編程仍然是贏家

我們去年發現的另一個趨勢依舊在延續:使用超過一種的語言進行協同合作。多語言程序員和/或組織為了不同的目的利用不同的語言。“我們看到越來越多地組織在他們的生態系統中使用不止一種語言。”New Relic的Neha Duggal說。“你可能會有編寫微服務的不同團隊,每個團隊都可以選擇一種他們愿意使用的語言。”

DZone的Kellet Atkinson也注意到了同樣的事情:“隨著向DevOps的推進,‘全棧開發人員’的想法已經有了很大的發展,他們知道多種語言。”DZone幾個月前推出了一個工作委員會,他補充說,“很多工作都要求有全面的開發人員,而且我們的很多人都傾向于考慮自己成為全棧的開發人員。”

變化意味著什么?

乍一看,在過去的一年里,編程語言的世界似乎沒有什么變化。但是,不要被堅挺在榜單前面的主流語言所迷惑,事實上,更新的語言和不斷變化的趨勢正在顯著地影響程序員個體和軟件開發團隊的選擇。

因此,盡管熟練使用Java、JavaScript、.NET、Python、各種C、Ruby、PHP、HTML和CSS仍然是安全的選擇,有遠見的開發人員可能還希望熟悉Haskell、Erlang、Elixir、Elm和Clojure等新的競爭者。展望未來,了解不止一種語言似乎會變得越來越有價值,因為越來越多的雇主會尋找那些在全堆棧中輕松工作的開發人員。


本站文章均為深正網站建設摘自權威資料,書籍,或網絡原創文章,如有版權糾紛或者違規問題,請即刻聯系我們刪除,我們歡迎您分享,引用和轉載,但謝絕直接搬磚和抄襲!感謝...
關注深正互聯
七星彩头尾