九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
從bug看11種編程語言演化史,果然如今Python最流行

選自Global App Testing

作者:Nick Roberts機器之心編譯參與:杜偉、戴一鳴

自 2008 年創(chuàng)辦以來,Stack Overflow 致力于為所有類型的開發(fā)者提供幫助,開發(fā)者們也提出了涵蓋所有開發(fā)領(lǐng)域的大量問題。但是,哪些問題是開發(fā)者不得不向 Stack Overflow 尋求解決的呢?本文作者通過對十一年來人們在 Stack Overflow 上提問進行了詞云統(tǒng)計,通過錯誤提問和解決遍覽編程語言發(fā)展歷程。

在本文中,作者選擇了 11 種最流行的編程語言(通過 Stack Overflow 標簽出現(xiàn)的頻率衡量),希望可以找出這些問題的共性及差異性。

首先觀察以下選擇的 11 種編程語言:

作者選擇的 11 種編程語言,包括 JavaScript、Java、C#、Python 等。

就開發(fā)者提出的原始問題數(shù)量來說,自 Stack Overflow 創(chuàng)辦以來,JavaScript 相關(guān)問題被詢問得頻率最高,這或許是因為它普遍存在于各種不同類型的應(yīng)用和服務(wù)中:無論開發(fā)者從事哪種互聯(lián)網(wǎng)工作,都需要了解一些 JavaScript 知識。

雖然整體來看 JavaScript 相關(guān)問題排名第一,但是隨著時間的遷移,可以看到頭名出現(xiàn)了變化。

2011 年,《哈佛商業(yè)評論》將數(shù)據(jù)科學(xué)家成為「21 世界最性感的工作」。自那以后,Python 成為數(shù)據(jù)科學(xué)家的首選編程語言,使用量也日益增長。2019 年,Python 超越 JavaScript 成為了 Stack Overflow 上被提問最多的編程語言。

所以,Python 語言要么正在快速成為最受歡迎的編程語言,要么與其他編程語言相比,新程序員使用 Python 的比例較高。

從前面的視頻來看,2008 年開始,C# 一直占據(jù)著 Stack Overflow 最受歡迎的編程語言榜首,而此時 Python、Java 和 JavaScript 還并不火熱。但是從 2012 年開始,Python 超越 C++,開始一路逆襲。同時,JavaScript 的用戶比例逐漸上升。最終,在 2018 年年底,Python 和 JavaScript 分別成為了榜單榜首和第二名。

但這些開發(fā)者具體都問些什么問題呢?提問最多的框架、程序包、函數(shù)和方法是什么呢?哪些數(shù)據(jù)類型給開發(fā)者帶來最多的困擾呢?這些問題在不同編程語言中又有哪些不同呢?

為了得出結(jié)果,作者做了以下工作:

1. 分別提取 11 種編程語言在 Stack Overflow 上的 1000 個點贊最高的問題;2. 在 Python 中進行數(shù)據(jù)清洗(pandas 工具);3. 將總計 11000 個問題(超過 96000 個單詞)饋入到 JavaScript 詞云算法中,從而得出顯示不同編程語言中通常痛點的鳥瞰透視圖。

結(jié)果如下所示(按編程語言):

JavaScript

JavaScript 已經(jīng)有 23 年的歷史,而 Stack Overflow 的創(chuàng)辦時間僅 11 年。在過去的 11 年里,「jquery」(上圖中左)成為被問最頻繁的 JavaScript 框架問題。 Python

Python 實際上比 JavaScript 早六年提出。在 1990 年提出 Python 后,Guido van Rossum (https://gvanrossum.github.io/) 的這項發(fā)明成為了數(shù)據(jù)科學(xué)家的一個選擇。天然上來說,最頻繁出現(xiàn)的問題都圍繞著數(shù)據(jù)處理庫「pandas」(中左)和「dataframe」(中上)。

然而,Python 有著廣泛的用途,它類似于一種「膠水語言」,在技術(shù)的很多不同領(lǐng)域都有應(yīng)用,這也可以解釋為什么網(wǎng)絡(luò)開發(fā)中的「django」(中下)會是一個重要的關(guān)鍵詞。 R 語言

也許是數(shù)據(jù)科學(xué)中第二個選擇,R 語言和 Python 本質(zhì)的不同是它完全為數(shù)據(jù)科學(xué)而生。數(shù)據(jù)處理中的特定概念,如「dataframe」(右上)、「datatable」(右上)和「matrix」(中間)似乎會給 R 語言用戶帶來更多困擾。

Python 和 R 都有非常好的操作數(shù)據(jù)的庫,雖然在涉及到數(shù)據(jù)可視化上,很多人會說 R 比 Python 更先進。這也可能是為什么「ggplot」(中間)是目前 R 語言用戶提問最多的。

也許 Python 用戶會發(fā)現(xiàn) matplotlib 更容易使用。 Ruby

自上世紀 90 年代中期出現(xiàn)后,Ruby 現(xiàn)已經(jīng)在服務(wù)端框架 ruby-on-「rails」(右上)中建立了自己的一席之地。 C#

C# 是由微軟開發(fā)的,用于其 .NET 框架(中右)。 C++

C++(1985)已經(jīng)成為了游戲開發(fā)者使用的語言。在 3D 游戲中建立視覺構(gòu)建塊的是 polygon,而 polygon 中基本的構(gòu)成是向量(中右)。 Java

Java(1995)被設(shè)計于一個非常泛用的目標——一次編譯,處處運行。在 PC 爆炸的上世紀 90 年代后期和互聯(lián)網(wǎng)興起的早期,Java 成為了很多 Windows 應(yīng)用背后的開發(fā)語言。但是最近,Java 逐漸在安卓系統(tǒng)里找到了自己的地位(中右)。 Objective-C

作為本次統(tǒng)計中最老的語言,Objective-C (1984) 牢牢占據(jù)著蘋果的 OSX 開發(fā)以及近年來 ios(左側(cè))在 iPhone(中間)的開發(fā),直到 Swift 語言問世。 Swift

自從 2014 年提出以來,Swift 就代替了 Objective-C,用于蘋果的生態(tài)開發(fā)。從這一語言中常提到了關(guān)鍵詞「objective-c」可以看出,數(shù)千名 ios 開發(fā)者已經(jīng)更新了自己的知識。 PHP

PHP(1995)是被設(shè)計用來進行服務(wù)器端的腳本語言,主要用于網(wǎng)絡(luò)開發(fā)?,F(xiàn)在它依然發(fā)揮著這樣的作用,這也是為什么這個編程語言中常常提出的問題都和「laravel」框架相關(guān)。 SQL

SQL 并不是有著完整特性的編程語言。它只為一個任務(wù)而生:操作數(shù)據(jù)。由于這一特殊目的,SQL 語言的痛點基本上都圍繞著數(shù)據(jù)庫連接,如「sever」、「mysql」、「database」、「query」和「select」等。

每個編程語言都在不斷地朝著,甚至被設(shè)計,來完成科技中的某個部分。R 用于數(shù)據(jù)科學(xué),而 Swift 則用于 IOS 開發(fā),C++則是電子游戲開發(fā)。這解釋了為什么不同的編程語言會爆出不同的 bug。例如,在 SQL 中可以經(jīng)常見到「database」這樣的關(guān)鍵詞,但是在 Objective-C 中可能就很少會見到了。

除了這些明顯的區(qū)別,本次可視化的結(jié)果也展示了不同領(lǐng)域本質(zhì)上的相似點?;镜臄?shù)據(jù)類型——如字符串和數(shù)組(但不是整型、浮點型或布爾型)數(shù)據(jù)是經(jīng)常給開發(fā)者帶來痛點的地方。

最終,將所有的問題集合在一起做成詞云。

原文鏈接:https://www.globalapptesting.com/blog/picking-apart-stackoverflow-what-bugs-developers-the-most

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
取代JavaScript,Python成為了被提問最多的編程語言
程序員應(yīng)該先學(xué)哪種編程語言?
網(wǎng)上學(xué)習(xí)編程的七大趨勢
2017應(yīng)該學(xué)習(xí)的最佳編程語言?
幫你提升 Python 的 27 種編程語言
如何開始編程語言?給初學(xué)者的幾個小貼士
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服