2021編程語言「后浪」趨勢預測:JavaScript、Python熱度不減,但崛起最快的卻是它
轉眼 2020 年已經過去了 8 個月,但對 2020 年的預測似乎并未結束。對于軟件開發(fā)從業(yè)者來說,這個行業(yè)時刻發(fā)生著變化,很多技能出現(xiàn)然后又消失,退場速度甚至遠超人們的想象。
但如果我們回頭看一下,關于編程語言的變化趨勢仍然值得探討。C 和 Java 算是行業(yè)中最古老的兩門語言,目前仍然在行業(yè)中占據(jù)一席之地。不過我們也能發(fā)現(xiàn),它們的受歡迎程度呈現(xiàn)一個曲線下降的趨勢。
作為一名開發(fā)者,Mr Herath 最喜歡的語言是 JavaScript。在一篇 Medium 文章中,他為我們分析了 2021 年可能最受歡迎的幾種編程語言。
JavaScript、Python 或者 Go?在討論每種語言的優(yōu)點之前,先看一些在線調查的結果。
調查結果說明了一切
1. Stack Overflow 調查
Stack Overflow 每年的開發(fā)者調查是全球規(guī)模最大、范圍最全面的調查之一。2019 年的統(tǒng)計獲得了全球近 9 萬名開發(fā)者的數(shù)據(jù)。在最想使用編程語言的榜單中,Python 領先地位明顯,JavaScript 和 Go 語言分列二三位。
圖源:https://insights.stackoverflow.com/survey/2019
正如 PyTorch 急速取代 TensorFlow 的位置一樣,編程語言的流行趨勢變化也很快。
Go 語言的受歡迎程度正在快速上升,根據(jù) Stack Overflow 2020 年度開發(fā)者報告的數(shù)據(jù)顯示,在開發(fā)者最想使用的榜單中,雖然 Go 語言依然排在 Python 和 Javascript 后面,但比例較 2019 年有所上升。
圖源:https://insights.stackoverflow.com/survey/2020
GitHub 趨勢
GitHut 2.0 圖表向我們展示了自 2013 年到 2019 年之間,不同編程語言的合并請求數(shù)量變化趨勢。正如你所見,有關 JavaScript 的比其他所有語言都多,Python 排名第二,但 Go 語言的節(jié)奏根本看不出來。
圖源:https://madnight.github.io/githut/#/pull_requests/2020/2
但觀察每種編程語言的排名,我們可以看到 Go 的受歡迎程度正在顯著提升,而 JavaScript 和 Python 的受歡迎程度正在下降。
圖源:https://madnight.github.io/githut/#/pull_requests/2020/2
GitHub 庫數(shù)量
圖源:https://github.com/python/cpython
圖源:https://github.com/nodejs/node
圖源:https://github.com/golang/go
如以上圖片所示,可以發(fā)現(xiàn) Go 對開發(fā)者的吸引力越來越高。盡管它的使用人數(shù)肯定不如其他兩種語言多,但從閱讀數(shù)量和 Star 量上看都是更高的。
那么問題來了,為什么越來越多的開發(fā)者都在使用 GO 語言?
Go 語言的優(yōu)勢
Go 語言是一種開源編程語言,它有助于開發(fā)者輕松地構建簡潔、可信賴和高效的軟件。2007 年,羅伯特 · 格瑞史莫、羅勃 · 派克和肯 · 湯普遜開始設計 Go 語言,并于 2009 年正式推出開源,這門語言的歷史只有短短十幾年,很長時間內它一直沒有獲得像 Python 和 JavaScript 那樣的關注度。
近年來,Go 語言的熱度日益上升,也曾兩度被評為年度編程語言。根據(jù) Stack Overflow 2019 年度開發(fā)者調查報告的數(shù)據(jù)顯示,在近 9 萬名受訪開發(fā)者中,有 67.9% 的人將 Go 語言作為他們最喜愛的編程語言之一。
圖源:https://insights.stackoverflow.com/survey/2019
Go 語言自身具有的優(yōu)勢是受開發(fā)者喜愛的一大原因。以下是 Go 語言的一些顯著優(yōu)勢:
- 效率高:Go 語言與 C 語言類似,開發(fā)者不需要掌握新的語法;
- 可以實現(xiàn)跨平臺運行;
- 簡單:Go 語言僅有 25 個關鍵詞以及較少的數(shù)據(jù)結構(沒有類別之分,只有函數(shù)和類型);
- 可信賴:Go 語言運行快,默認支持并行機制,模型漂亮,并且默認處理生產服務器(production-ready server);
- 更新不頻繁:Go 語言即使更新,也不會出現(xiàn)重大的變動,并且 100% 兼容舊版本;
最后,Go 語言已經非常成熟了,它擁有內置包管理器測試框架和并行模型。
薪酬也是反映編程語言是否受歡迎的指標之一,同樣根據(jù) Stack Overflow 2019 年度開發(fā)者調查報告的數(shù)據(jù)顯示,在哪種編程語言能夠獲得較高薪酬的排名中,Go 語言排名第三,而 Python 和 JavaScript 的排名就落后了很多。由此也反映出了 Go 語言的「錢途」。
圖源:https://insights.stackoverflow.com/survey/2019
所以明年該用哪個語言?
正如我們所見,Go 語言在過去幾年里表現(xiàn)很好。在每個編程語言的調查中,我們都能看到除了 JavaScript 和 Python 之外,Go 吸引了大量用戶。可以預見的是,在接下來的幾個月里,這門語言的人氣和資源會不斷增加。所以雖然人人都在用 JavaScript,但我認為 Go 語言將會是 2021 年最好的后端編程語言。
原文鏈接:
https://medium.com/better-programming/what-will-be-the-best-back-end-programming-language-for-2021-18096c0c6105
【本文是51CTO專欄機構“機器之心”的原創(chuàng)譯文,微信公眾號“機器之心( id: almosthuman2014)”】