2021程式語言後浪預測:Java、Python熱度不減,崛起最快卻是它

2020-12-14 機器之心Pro

選自Medium

機器之心編譯

作者:Mr Herath

編輯:澤南、杜偉、蛋醬

JavaScript?Python?此外,Go 語言也是不容忽視的後起之秀。

轉眼 2020 年已經過去了 8 個月,但對 2020 年的預測似乎並未結束。對於軟體開發從業者來說,這個行業時刻發生著變化,很多技能出現然後又消失,退場速度甚至遠超人們的想像。

但如果我們回頭看一下,關於程式語言的變化趨勢仍然值得探討。C 和 Java 算是行業中最古老的兩門語言,目前仍然在行業中佔據一席之地。不過我們也能發現,它們的受歡迎程度呈現一個曲線下降的趨勢。

作為一名開發者,Mr Herath 最喜歡的語言是 JavaScript。在一篇 Medium 文章中,他為我們分析了 2021 年可能最受歡迎的幾種程式語言。

JavaScript、Python 或者 Go?在討論每種語言的優點之前,先看一些在線調查的結果。

調查結果說明了一切

Stack Overflow 調查

Stack Overflow 每年的開發者調查是全球規模最大、範圍最全面的調查之一。2019 年的統計獲得了全球近 9 萬名開發者的數據。在最想使用程式語言的榜單中,Python 領先地位明顯,JavaScript 和 Go 語言分列二三位。

圖源:https://insights.stackoverflow.com/survey/2019

正如 PyTorch 急速取代 TensorFlow 的位置一樣,程式語言的流行趨勢變化也很快。

Go 語言的受歡迎程度正在快速上升,根據Stack Overflow 2020 年度開發者報告的數據顯示,在開發者最想使用的榜單中,雖然 Go 語言依然排在 Python 和 Javascript 後面,但比例較 2019 年有所上升。

圖源:https://insights.stackoverflow.com/survey/2020

GitHub 趨勢

GitHut 2.0 圖表向我們展示了自 2013 年到 2019 年之間,不同程式語言的合併請求數量變化趨勢。正如你所見,有關 JavaScript 的比其他所有語言都多,Python 排名第二,但 Go 語言的節奏根本看不出來。

圖源:https://madnight.github.io/githut/#/pull_requests/2020/2

但觀察每種程式語言的排名,我們可以看到 Go 的受歡迎程度正在顯著提升,而 JavaScript 和 Python 的受歡迎程度正在下降。

圖源:https://madnight.github.io/githut/#/pull_requests/2020/2

GitHub 庫數量

圖源:https://github.com/python/cpython

圖源:https://github.com/nodejs/node

圖源:https://github.com/golang/go

如以上圖片所示,可以發現 Go 對開發者的吸引力越來越高。儘管它的使用人數肯定不如其他兩種語言多,但從閱讀數量和 Star 量上看都是更高的。

那麼問題來了,為什麼越來越多的開發者都在使用 GO 語言?

Go 語言的優勢

Go 語言是一種開源程式語言,它有助於開發者輕鬆地構建簡潔、可信賴和高效的軟體。2007 年,羅伯特 · 格瑞史莫、羅勃 · 派克和肯 · 湯普遜開始設計 Go 語言,並於 2009 年正式推出開源,這門語言的歷史只有短短十幾年,很長時間內它一直沒有獲得像 Python 和 JavaScript 那樣的關注度。

近年來,Go 語言的熱度日益上升,也曾兩度被評為年度程式語言。根據Stack Overflow 2019 年度開發者調查報告的數據顯示,在近 9 萬名受訪開發者中,有 67.9% 的人將 Go 語言作為他們最喜愛的程式語言之一。

圖源:https://insights.stackoverflow.com/survey/2019

Go 語言自身具有的優勢是受開發者喜愛的一大原因。以下是 Go 語言的一些顯著優勢:

效率高:Go 語言與 C 語言類似,開發者不需要掌握新的語法;

可以實現跨平臺運行;

簡單:Go 語言僅有 25 個關鍵詞以及較少的數據結構(沒有類別之分,只有函數和類型);

可信賴:Go 語言運行快,默認支持並行機制,模型漂亮,並且默認處理生產伺服器(production-ready server);

更新不頻繁:Go 語言即使更新,也不會出現重大的變動,並且 100% 兼容舊版本;

最後,Go 語言已經非常成熟了,它擁有內置包管理器測試框架和並行模型。

薪酬也是反映程式語言是否受歡迎的指標之一,同樣根據 Stack Overflow 2019 年度開發者調查報告的數據顯示,在哪種程式語言能夠獲得較高薪酬的排名中,Go 語言排名第三,而 Python 和 JavaScript 的排名就落後了很多。由此也反映出了 Go 語言的「錢途」。

圖源:https://insights.stackoverflow.com/survey/2019

所以明年該用哪個語言?

正如我們所見,Go 語言在過去幾年裡表現很好。在每個程式語言的調查中,我們都能看到除了 JavaScript 和 Python 之外,Go 吸引了大量用戶。可以預見的是,在接下來的幾個月裡,這門語言的人氣和資源會不斷增加。所以雖然人人都在用 JavaScript,但我認為 Go 語言將會是 2021 年最好的後端程式語言。

相關焦點

  • 月入過萬的程式語言PHP、Python、Java到底該選擇哪一個
    是太陽系最好的語言php?還是在編程江湖名稱響噹噹的Python?還是很早就玩起對象模式的java?同學們是不是已經一頭霧水了呢?下面我們來分析下各個語言的優劣勢說到php,大家第一反應是「世界上最好的語言」,沒毛病,它就是啊,php是開發最快速的語言,很多中小型創業公司首選的第一語言。別的語言還在搭架構,php開發的項目已經上線了,what?
  • Python和Java語言,新手應該先學哪個
    ,在初入門徑的時候,經常會有一個困惑,拿不定主意,是學習java呢,還是學習python?至於python語言,現在火得不行,全宇宙都知道的程式語言,吸引了不少人的眼球,各大培訓機構的標語都是大數據+python+人工智慧了,這些趁熱點的標語你看看就行了,別當真,當真你就輸了。python是個腳本語言,極其靈活,極其好學,既然這麼好,為啥不學呢?其實在編程界裡,語言的靈活,其潛臺詞就是失控。
  • 2018年學習編程是學習JAVA好還是學習python好?
    2018年世界程式語言熱度排名python首次超出java,很多同學想學習編程,但是選擇哪門語言方面很糾結,過去幾年java一直排名第一,選擇java無話可說,新的熱度是不是會持續下去,Java還那麼吃香嗎?成為選擇的一個就節點。
  • 程式設計師學習編程,學習這四門程式語言就夠了
    中國程式設計師都有一個讓人難於理解的問題,特別是新手程式設計師,都有喜歡不斷學習最近熱門的程式語言,比如近一年的來的python超過java成為熱度排名第一,同時我們也發現很多程式設計師開始學習盲目ython,作為一名專業的程式設計師,沒有必要把程式語言都學完,比較目前程式語言有不少200種,每種程式語言都有成為熱度的可能性
  • Go語言和Java、Python等其他語言的對比分析
    Go是由那些開發大型系統的人設計的,同時也是為了這些人服務的;它是為了解決工程上的問題,不是為了研究語言設計;它還是為了讓我們的編程變得更舒適和方便。但是結合Google當時內部的一些現實情況,如很多工程師都是C系的,所以新設計的語言一定要易學習;20年沒有出新的語言了,所以新設計的語言必須是現代化的(例如內置GC)等情況。根據實戰經驗,他們向著目標設計了Go這個語言。
  • Java、Python、C語言?5大熱門程式語言,我該怎麼選?
    但是這個不是什麼壞事,入門來說,從簡入難,或者從難入簡,都是很好的選擇。• 庫:庫都是免費的,並且有很多庫和函數把編程變得相對容易很多。• 物聯網:Python也許是會成為物聯網當中最受歡迎的語言,我們都知道樹莓派這樣的新平臺都是基於Python開發的。
  • 2021年程式語言趨勢預測:Python和JavaScript仍火熱,Go不可小覷
    程式語言及框架似乎總是被人拿來比較,這裡我們只談語言。作為開發人員,在當今這個技術更迭飛快的時代要連年吃香並非易事,很多十年開發經驗以上的開發人員不知道經歷了多少語言的變化,今年還在用C語言,下一年就是D了。「PHP是世界上最好的程式語言」已被人忘卻,但「青春飯」和35歲「金龍躍魚門」的傳說確真實發生。
  • 為什麼入門大數據選擇Python而不是Java?
    源 | 程序媛不是程序猿     文 | 小媛馬雲說:「未來最大的資源就是數據,不參與大數據十年後一定會後悔它常被暱稱為膠水語言,能夠把用其他語言製作的各種模塊(尤其是C/C++)很輕鬆地聯結在一起。7月20日,IEEE發布2017年程式語言排行榜:Python高居首位。java和python,都可以運行於linux作業系統,但很多linux可以原生支持python,java需要自行安裝。java和python強於c#的原因大於支持linux,支持osx,支持unix,支持arm。
  • java大數據和python大數據的全面對比,哪個更主流?
    大數據是目前網際網路流行的技術語言,處理大數據的程式語言比較有優勢的也很多,比如java、python、go、R語言、Hadoop等等,按道理來說每種程式語言都可以處理大數據,只是處理的規模不一樣而且,但是現在比較受歡迎的數據處理程式語言是java與python。
  • 最強程式語言 Java 和最受歡迎之 Python 的巔峰對決
    作為程式設計師們的看家利器之程式語言,倘若技術開發者對其掌握得越深則對自身職業生涯越有益處,然隨著技術的更新變革,我們在日常使用不單單只會用到一門程式語言
  • 2017 年度程式語言榜,Java 最流行、JavaScript 最沒價值?
    【CSDN編者按】在之前的 TIOBE 年度榜單中,寶刀未老的 C 語言成功逆襲,成為 2017 年度程式語言。在本文中,我們綜合了最具權威的 TIOBE 榜單、全球最大的求職引擎 Indeed.com、以及代碼最活躍的社區之一 GitHub,對於過去一年中哪種程式語言最受歡迎?程式語言中有哪些一直屹立不倒?2018 年的語言趨勢是怎樣的?JavaScript 又為何會會遭到棄用?
  • Python在程式語言中處於怎樣的地位?
    Python現在的使用已經不能算是一個小眾的程式語言了,如今的用途廣泛,包括很多老師的科研項目裡面很多都用python,多數網站用的也是python比如:谷歌、知乎、facebook等。不知道你們是否有聽過這麼一個段子:幾個程式語言走在路上,遇見了一群敵人C:拿出一根棍子,一個一個把敵人砸死。C++:用機關槍。java:我打電話叫十萬個基佬!perl:我會功夫!ruby大喊著拿著武士刀衝上去了。python:用氫彈。lisp:我先把敵人分組一下吧!haskell:我們可以用殲星艦啊!
  • 2021 年 1 月程式語言排行榜:Java 穩居第一
    對於已經在IT行業工作的程式設計師而言,想要長足發展不被淘汰,就一定要與時俱進,而對於編程界的初學者來說,想要入行,選對一門 「正確」的技術語言很重要,它能讓你在職場上平步青雲。從圖中可見,Java市場佔有率任然是巋然不動,穩居第一!可見其市場老大地位穩如泰山。市場佔有率的高地位,Java的工資水平自然也不低,工資的排名是python, c/c++, java。
  • 程式語言那麼多,為何都建議你學Python
    當然,學習編程不分早晚,26歲以後才開始學習變成的工作者當中,也有36%是現在的高級別的開發人員,他們是編程開發的中堅力量,在編程工作中也佔比較大的比例,而且當前企業聘請的大多數程式設計師也是這些人群。高薪酬以及人工智慧的發展,吸引了越來越多的人加入學習編程的行列,但是,學習哪種語言入門,就難到了很多「小白」。
  • 腳踢java,拳打php,年薪百萬的python!該擔心找工作嗎?我勸你冷靜
    尤其是非北上廣城市,職位數量少,要求反而比一線城市更高,我個人對這些人轉行不看好,歡迎指正。你認為呢?在看完本文之後,歡迎在下方討論。java來對比下,java是個老牌的語言了,職位絕對是要比python多的,但是python確實也還不少,但是一個職位還說明不了什麼問題,先別著急2.經驗要求跟學歷問題同樣也對比下java相對來講python對於經驗的要求低些,但是任何程式語言都一樣,發布招聘都會要求有經驗的,不過小編之前面試的時候也是優化了簡歷的
  • 2020 沒能成為「年度程式語言」的Python,是要走php的老路嗎?
    年度程式語言?首先先解釋下年度程式語言,年度程式語言是對比當前這個語言對比去年同期的增長率,增長率最高的將獲得年度語言的稱號,那麼2020的程式語言是由誰獲得的?解析下TIBOE所以很遺憾,python的增長率是第三名,沒能蟬聯年度最佳語言的稱號,但是不代表python不行,下圖是17年-19年的崗位需求變化,曲線越高,增長率越高對比下其他語言俗話說沒有對比就沒有傷害,首先先上python
  • 程式語言學哪個比較好?2019年最實用的程式語言
    第三類語言則是Objective-C和R。1、java-大眾化的程式語言Java是歷史最悠久的程式語言之一。Java可謂是Web應用程式、桌面程序、作業系統及更多系統的立足之本。這種面向對象、基於類的程式語言廣泛使用;此外,它也是最受歡迎的語言之一。
  • 程式語言那些事
    提起編程,一定離不開程式語言,有些軟體既可以用A語言來編寫,也可以用B語言來編寫,為什麼會有這麼多程式語言,面對這麼多程式語言該如何選擇。機器語言只要你接觸過編程,你就一定聽說過程式語言最底層就是機器語言,它們是一堆的01符號,通過組合形成了我們想要的各種功能。因為物理電路實現起來方便,因此軟體科學家們選擇了01來表示數據,選擇二進位來表示數字,但是因為難於記憶,因此誕生不久之後,人們迫切希望一種程式語言來取代它。
  • Java VS Python:哪個未來發展更好?
    很多開發者認為Python是比Java更高效的語言,Python是一種解釋性語言,伴隨著優雅的語法,它是腳本編寫和快速應用程式開發在許多領域的絕佳選擇。Python是一種動態類型的程式語言,無需聲明變量。
  • 初學者入門編程應該學C+ +、Java還是Python?
    C++、Java和Python都是面向對象的程式語言,因為歷史發展的原因,都各自有其各自的擅長領域。C++是一種最廣泛支持範式的程式語言,比較難學,涉及到了指針的概念。指針會比較頭疼。當然如果C學的不錯,C++上手也會快。但是和Java和Python不同的是, C++不支持垃圾回收機制。