對話程序員:各編程語言十年來的發展史

過去十年,編程語言發生了很大的變化,隨著互聯網大時代的邁進,將來還會發生更多的變化。在最新發布的IEEE年度榜單中,Python仍佔據首位。

我們都非常喜歡自己的設備。手機上的相機能夠幫助我們記錄人生中最寶貴的時刻,而互聯網及其眾多通信工具能夠讓我們與遠方的朋友和家人保持聯繫。通常我們都不會想起為我們帶來互聯網的正是各種編程語言,但是我們也不能忽視最近某些編程語言的流行發生了變化。我們可以從這些變化中瞭解數字世界的發展方向,同時也可以回顧一下這段發展史。

排名第一:Python

上個月,IEEE綜覽(IEEE Spectrum)發佈了各大編程語言的年度排名,許多人驚訝地發現Python保住了頭把交椅的寶座。Python這種基於腳本的編程語言,一直在IEEE綜覽的排名中居首位。然而,這並不奇怪。IEEE對各大編程語言的評分進行了加權處理。去年,Python的得分為100、C++的得分為99.7、Java的得分為97.5、而C的得分為96.7。然而,今年編程語言的格局發生了變化。雖然Python仍以100分高居榜首,但Java成了第二名,得分卻只有96.3——大幅下降。第三位的C為94.4,C++以87.5的得分滑落到第四位,而統計編程語言R以81.5的得分排在第五位。排名6-10的編程語言依次為JavaScript、C#、MATLAB、Swift和Google Go。

請注意,IEEE綜覽的排名包括支持電子和電氣工程硬件以及軟件應用程序的所有編程語言。IEEE根據8個數據來源,通過11個度量標準生成了該排名列表,其中的數據來源包括IEEE、Reddit、Stack Overflow、推特、Google、GitHub、CareerBuilder、Hacker News和GitHub。

IEEE是世界上最大的工程和應用科學組織,但其不是對編程語言進行排名的唯一組織。TIOBE也發佈了軟件編程語言的年度排名。TIOBE沒有考慮硬件,在其排名中Java高居榜首,其次分別是C、Python、C++、C#、Visual Basic .NET、JavaScript、SQL、PHP和Objective-C。

對話程序員:各編程語言十年來的發展史

十年前的排名

2010年,在TIOBE的編程語言指數中,居於榜首的十大編程語言分別為:Java、C、C++、PHP、Visual Basic、C#、Python、Objective-C、Perl和Ruby。

2014年,在IEEE的首次排名中還出現了C#、PHP和Ruby。

發生了哪些變化?

有些編程語言(例如Ruby和Ruby on Rails),由於運行時的速度和啟動速度不夠快,無法支持全面的商業產品。而有些語言(比如PHP),由於安全性的問題導致Facebook等公司放棄了使用。

Python、Java、JavaScript和C屬於通用語言,所以它們都得到了廣泛的使用。尤其是Python,它有許多專門的庫支持機器學習、深度學習(Theano)、人工智能以及微控制器和小型計算機(比如Adafruit、Arduino和Raspberry Pi)。此外,它還擁有方便Python代碼與其他產品和庫結合使用的庫,例如Google的Tensor Flow和微軟的Cognitive Toolkit。Python的用途非常廣泛,且易於學習,同時還提供了當今大數據世界所需的安全性。

其他因素:移動設備,可穿戴設備

除此之外,影響編程語言流行度的還有其他一些因素。語言本身固有的安全性是一個因素,還有一個因素是移動設備的普及。2018年,70%的美國人擁有智能手機,50%擁有平板電腦。對於這些移動用戶來說,他們90%的上網時間在使用應用,而非互聯網。

在考慮編程語言的流行度時,這是一個非常重要因素,因為某些語言更適合於移動應用程序的開發以及與平板電腦和智能手機等便攜式設備的結合使用,因此,還有一個因素不可忽略:硬件。

為我們日常生活帶來便利性的可穿戴設備及其他設備越來越受歡迎,包括睡眠與活動監視器、智能手錶以及矯正姿勢的可穿戴設備等。隨著可穿戴設備的普及以及桌面軟件的減少,能夠滿足這種需求的編程語言的流行度勢必會增加。

過去十年發生了很大變化,隨著我們朝著互聯網大時代的邁進,將來還會發生更多的變化。目前,用途最廣泛以及最安全的編程語言將獲得最大的普及,但是隨著電子工程學的不斷髮展,誰又能預料編程的未來呢?


分享到:


相關文章: