流行編程語言
There has never been a unanimous agreement on what the most popular programming languages are, and probably never will be. Yet we believe that there is merit in trying to come up with ways to rank the popularity of programming languages. It helps us to see the trends over time and gives us hints as to what to focus on. In the ever-changing world of technology, it is important to stay ahead of the curve.
關于什么是最流行的編程語言,從未達成一致意見,也許永遠不會。 但是,我們認為嘗試提出一種方法來對編程語言的流行度進行排名是有好處的。 它可以幫助我們了解一段時間內的趨勢,并為我們提供有關重點的提示。 在瞬息萬變的技術世界中,保持領先地位很重要。
The analysis that follows is on data from Stack Overflow (SO). The SO website is arguably the biggest and the most popular Q&A website in the developer community (“developer” in the general sense of anyone who writes code). Currently, it has about 10 million visits per day and has had 12.6 million users who were active on the website beyond simple visits (e.g. posted a question/answer or made a comment/edit). We believe that ranking programming languages based on their popularity on SO is a good estimate of their actual popularity.
接下來的分析是關于堆棧溢出(SO)中的數據的。 SO網站可以說是開發人員社區中最大和最受歡迎的問答網站(一般來說,任何編寫代碼的人都稱為“開發人員”)。 目前,它每天的訪問量約為1000萬,除簡單的訪問(例如,發布問題/回答或發表評論/編輯)外,已有1,260萬用戶活躍在網站上。 我們認為,根據編程語言在SO上的流行度來排名是對它們實際流行度的一個很好的估計。
We have calculated a popularity index for programming languages which is the average of three factors: Number of questions asked daily, number of daily distinct users and view count of questions. To identify a language, we consider the tags assigned to the posts. For example for JavaScript we consider the following tags:
我們已經計算出編程語言的受歡迎程度指數 ,該指數是三個因素的平均值:每天提出的問題數量,每天的獨立用戶數量以及問題的查看數量。 為了識別語言,我們考慮分配給帖子的標簽。 例如,對于JavaScript,我們考慮以下標記:
tags like ‘%javascript%’
or tags like ‘%jquery%’
or tags like ‘%js>%’ — tag ends with ‘js’ e.g. ‘node.js’
or tags like ‘%extjs%’ — includes ‘extjs4’ and others
For daily question count, we calculate the number of questions that were asked in each day for each programming language.
對于每日的問題計數,我們計算每種編程語言每天要提出的問題數量。
To calculate the Distinct Users Count, we count the number of distinct users who asked/answered a question, posted a comment or edited a question/answer for each programming language in each day.
為了計算“不同用戶數”,我們計算每天針對每種編程語言詢問/回答問題,發表評論或編輯問題/答案的不同用戶數。
Every post in SO has an attribute showing how many times the post has been viewed. We normalize this number by dividing it by the number of days that the post has been visible. This gives us the Normalized View Count for that post. We then sum the view counts for each programming language for each day. Note that since the variance of the normalized view count for the posts in the most recent month is high, we do not include these posts in the calculation. As a result, this measure is one month behind the other two measures.
SO中的每個帖子都有一個屬性,顯示該帖子被查看了多少次。 我們將其除以可以看到帖子的天數來歸一化。 這為我們提供了該帖子的標準化視圖計數。 然后,我們將每天每種編程語言的觀看次數相加。 請注意,由于最近一個月的帖子的標準化視圖計數差異很大,因此我們在計算中不包括這些帖子。 結果,該措施比其他兩項措施落后了一個月。
For further details on how the index is calculated see the GitHub repository.
有關如何計算索引的更多詳細信息,請參見GitHub存儲庫 。
Let’s now explore trends using some Line Charts. Note that you can follow along using this interactive dashboard (from the top-right choose the desired filters.)
現在讓我們使用一些折線圖探索趨勢。 請注意,您可以繼續使用此交互式儀表板 (從右上角選擇所需的過濾器。)

Note: The following analysis is based on the SO data until the end of May 2020. The data behind the interactive dashboard will be updated each month.
注意:以下分析基于截至2020年5月的SO數據。交互式儀表板后面的數據將每月更新。
前五 (Top Five)
Starting with the top five most popular programming languages (based on our index), if we look at the yearly data, we see that JavaScript has held the crown for the past 10 years, although Python now a close second, is catching up quickly. The other three, namely Java, SQL and HTML/CSS have been slightly declining in popularity in the past seven years.
從年度最流行的五種編程語言(根據我們的索引)開始,如果我們查看年度數據,我們會發現JavaScript在過去10年中一直保持領先地位,盡管Python現在緊隨其后,正在Swift趕上。 在過去的七年中,Java,SQL和HTML / CSS等其他三種語言的普及率略有下降。

If we look at the quarterly data, JavaScript is still at the top, although it is neck and neck with Python. The interesting part is the monthly data. May 2020 was the first time in the past 10 years that JavaScript lost its position at the top. Given the pace of growth of Python, it seems this situation is going to last for some time.
如果我們查看季度數據,則JavaScript仍處于頂部,盡管與Python并駕齊驅。 有趣的部分是每月數據。 2020年5月是過去10年中JavaScript首次失去其最高職位的位置 。 考慮到Python的增長速度,這種情況似乎將持續一段時間。

數據科學 (Data Science)
Data Science has been a hot topic in recent years. In the following chart we can see that Python and R have had high growth rates in the past years. Scala has kept its popularity more or less, and Julia’s popularity has been minuscule so far. Note that to make it a fair comparison, only the data science part of Python is considered for this comparison (see the GitHub Repository for more details).
數據科學一直是近年來的熱門話題。 在下面的圖表中,我們可以看到Python和R在過去幾年中都有很高的增長率。 Scala或多或少地保持了它的受歡迎程度,到目前為止,Julia的受歡迎程度很小。 請注意,為了進行公平的比較,僅考慮將Python的數據科學部分用于此比較(有關更多詳細信息,請參見GitHub Repository)。

關系數據庫管理系統 (RDBMS)
Among Relational Database Management Systems (RDBMS), MySQL is still the most popular, although its popularity has been declining. The same applies to SQL Server. On the other hand, PostgreSQL’s popularity has been constantly increasing in the past decade. There hasn’t been much change in popularity of Oracle.
在關系數據庫管理系統(RDBMS)中,盡管MySQL的受歡迎程度一直在下降,但它仍然是最受歡迎的。 同樣適用于SQL Server。 另一方面,PostgreSQL流行在過去十年中一直在不斷增加。 Oracle的流行程度并沒有太大變化。

移動開發 (Mobile Development)
Regarding Mobile development languages, we see some considerable changes. Swift was introduced in June 2014, which caused a major hit on popularity of Objective-C. A similar story happened for Kotlin and Java (mobile). In 2017 Google included Kotlin in Android Studio and Since May 2019, it is the preferred programming language for Android app developers.
關于移動開發語言,我們看到了一些重大變化。 Swift于2014年6月推出,這極大地影響了Objective-C的普及。 Kotlin和Java(移動)也發生了類似的故事。 2017年,谷歌將Kotlin包含在Android Studio中,自2019年5月以來,它是Android應用程序開發人員首選的編程語言。

比賽吧! (Let’s Race!)
To see the calculated popularity index in action over the past 10 years, click on the play button at the bottom-left of the chart below. You can also use the slider at the bottom to move to a specific time range.
要查看過去10年中實際計算出的受歡迎程度指數,請點擊下面圖表左下方的播放按鈕。 您也可以使用底部的滑塊移動到特定時間范圍。
Note: The chart will be updated with new data one month after the beginning of every quarter (as explained above, the ViewCount measure lags one month behind the other two measures, which causes the index to lag one month behind as well, as it is the average of the three measures).
注意:圖表將在每個季度開始的一個月后使用新數據進行更新(如上所述,ViewCount度量值比其他兩個度量值落后一個月,這會使索引也滯后一個月)。這三個指標的平均值)。
If you have suggestions for improving the index, please let me know, either in the comments or by creating an issue in the GitHub Repository.
如果您有改進索引的建議,請在評論中或通過在GitHub存儲庫中創建問題來通知我。
Interactive Dashboard
互動儀表板
GitHub Repository
GitHub儲存庫
翻譯自: https://towardsdatascience.com/popularity-ranking-of-programming-languages-72bcf697ea20
流行編程語言
本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。 如若轉載,請注明出處:http://www.pswp.cn/news/388289.shtml 繁體地址,請注明出處:http://hk.pswp.cn/news/388289.shtml 英文地址,請注明出處:http://en.pswp.cn/news/388289.shtml
如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!