取代不了的 Java敛助、擋不住勢頭的 Python粗卜、吐槽不盡的 C++......數(shù)百種編程語言中也僅有那么幾種當屬主流語言,而如今這些主流的編程語言局勢如何纳击?身處其中的開發(fā)者又需要了解哪些內容休建?本文無意挑起編程語言爭端,而是希望以最新的趨勢一窺當前各大主流語言的發(fā)展現(xiàn)狀评疗。
日前,一月一更的 TIOBE 編程語言社區(qū)最新發(fā)布了 2019 年 3 月排行榜茵烈。
Python 從小眾語言到主流的逆襲
從榜單來看百匆,曾經鐵打的 Java、C呜投、C++ 局勢加匈,早已在數(shù)月前被 Python 的闖入而打破。而究其根由仑荐,并非是 C++ 的應用領域正在逐漸縮減雕拼,而是隨著人工智能、機器學習的崛起粘招,適用于該領域的 Python 才會水漲船高啥寇,帶起了市場份額。這也是為什么在 Java、C辑甜、C++衰絮、Visual Basic .NET 等一眾編程語言使用率增幅放緩的情況下,Python 仍能以 2.39% 的增率保持強勁的增長勢頭磷醋。
TIOBE 編程語言排行榜 Top 20
而對于 Python 的未來猫牡,根據(jù)央廣網報道,2018 年中國人工智能核心產業(yè)規(guī)模已達到 686 億元邓线,在2019 年中淌友,科技部副部長李萌表示將著重加快項目部署實施,強化基礎研究骇陈,加大芯片震庭、工具和平臺等研發(fā)力度。因此在人工智能項目將實現(xiàn)規(guī)乃跬幔化落地的前景之下归薛,作為基礎研發(fā)支持的 Python 語言,至少在國內的大環(huán)境中匪蝙,應用需求也將進一步擴大主籍。
“眾口難調”的編程語言
此外,通過 3 月的編程語言排行榜逛球,我們雖然看到了 Java千元、C、C++ 等語言位于 Top 5 的位置颤绕,但事實上幸海,在日常應用中,開發(fā)者對其的吐槽也越來越盛奥务。
排名第一的 Java物独,依然有人嫌棄
在過往的這些年中,無論是 Google 扶持的 Kotlin氯葬、還是其親兒子 Go 語言挡篓、亦或是高可靠性的 Erlang,均對語言界的龍頭老大 Java 發(fā)起過挑戰(zhàn)帚称,但最終都不一而終官研。對此,在 CSDN 最新發(fā)布的 2018 中國軟件開發(fā)者報告中闯睹,前豌豆莢技術負責人戏羽、現(xiàn)輕芒聯(lián)合創(chuàng)始人范懷宇評價道:
多年以來,Java 一直都是最常用的語言 楼吃,一方面是因為 Java 可以用在前后端開發(fā)始花,具有很好的普適性妄讯;另一方面,因為 JVM 虛擬機和 Java 生態(tài)的完善衙荐。在前端開發(fā)上捞挥,Kotlin 等 JVM 上的其他語言表現(xiàn)非常優(yōu)異,和現(xiàn)有的 Java 類庫也可以無縫兼容忧吟,會逐步在很多場景下取代 Java砌函。不過,在服務端開發(fā)上溜族,Java 依然是最平衡的選擇讹俊。Java 的 Web 框架經過千錘百煉已經可以支撐足夠大的并發(fā),JVM 經過長年優(yōu)化性能表現(xiàn)也而非常出眾煌抒,而 Java 的各種類庫仍劈、統(tǒng)一的編程模型、豐富的人才儲備寡壮,也可以滿足各種場景的訴求贩疙。
不過自從 Oracle 宣布 Java 版本以六個月為周期更新后,Java 的更新速度一度成為諸多開發(fā)者所詬病的點。當前,Java 12 預計將于本月內發(fā)布咕别,而Java 13 也已處于 Early-Access(EA没咙,早期訪問)階段师骗,對此,不過不少開發(fā)者大呼:
Java 更新太快不一定是好事;
當前 Java 8 仍是主流;
被調到某銀行癞尚,項目開始前告訴我盡情發(fā)揮。部署時各種問題乱陡,Spring Boot 換成普通 Maven 再換成 J2EE 項目浇揩,Spring 從 5.7 換成 4.3 再到 3.1,JDK 從 8 降到 7憨颠,愣是沒部署成功临燃。不說了我接著看 1.6 特性去了;
Java 9 及以上都不支持 32 位系統(tǒng)烙心。讓我這位拿著僅支持 32 位 Win10 系統(tǒng)的 ATOM 上網本給別人演示項目的情何以堪。
Oracle 應該把 Java 語言維護交還社區(qū)乏沸,專心做好 JVM 就行了淫茵,希望以后 Java 和 JVM 可以成功拆分,獨立發(fā)展蹬跃。
C++ 的模塊化問題
廣泛應用于游戲匙瘪、科學計算铆铆、分布式應用、操作系統(tǒng)丹喻、嵌入式等領域的 C++薄货,似乎在最新版本的 C++ 20 中遭遇了難題,即 C++ 標準委員會欲將 Modules(模塊化)加入 C++ 20 中碍论。對此谅猾,有網友認為,這無用的模塊設計最終會害死自己鳍悠。
同時税娜,也有不少技術人表示,C++ 正變得越來越易用藏研,不過這門語言該瘦身了敬矩,哪本 C++ 教程不是一千頁以上的?蠢挡!
其他編程語言排名
除此之外弧岳,在 TIOBE 榜單的 Top 10 中,C# 自從去年 7 月被 Visual Basic .NET 反超后业踏,市場份額持續(xù)下滑禽炬,如今 Visual Basic .NET( 6.429%)的使用率幾乎是 C#(3.267%)的一倍。同時 JavaScript堡称、Visual Basic 的名次均有所下降瞎抛,不過稍許的浮動也屬正常范疇。
在本月編程語言排行榜中却紧,還值得注意的是桐臊,PowerShell 進入了 TIOBE 排行榜的前 50 名,位于第 45 名晓殊。PowerShell 是面向 Windows 和 Windows Server 的自動化平臺和腳本語言断凶,從誕生至今已經超過 12 年。事實上巫俺,去年微軟旗下的 PowerShell 團隊才推出 PowerShell Core 的第一個版本认烁,并以 6.0 后綴來命名。想來 Powershell 之所以會再次受歡迎介汹,可能與之相關却嗡,因為 PowerShell Core 基于 .NET Core 上可以構建開源項目,也能在 Windows嘹承、MacOS窗价、Linux、Ubuntu叹卷、Debian撼港、OpenSUSE 等多個平臺上運行坪它。
TIOBE 編程語言排行榜第 21-50 名
第 51-100 名如下,由于它們之間的數(shù)值差異較小帝牡,僅以文本形式列出(按字母排序):
4th Dimension/4D, ABC, ActionScript, Alice, Apex, APL, Avenue, bc, Bourne shell, C shell, CL (OS/400), Clojure, Common Lisp, Crystal, cT, Elixir, Elm, Emacs Lisp, F#, Forth, Icon, IDL, Inform, Io, Korn shell, LiveCode, Maple, Mercury, Modula-2, Monkey, MQL4, MS-DOS batch, NATURAL, OpenCL, Oz, PostScript, Pure Data, Q, Ring, S, SPARK, SPSS, Standard ML, Stata, Tcl, Tex, TypeScript, Vala/Genie, VBScript, VHDL
Top 10 編程語言 TIOBE 指數(shù)走勢(2002-2019)
歷史排名(1998-2019)
注:以下排名位次取決于 12 個月的平均值往毡。
編程語言“名人榜”(2003-2018)
【說明】
TIOBE 編程社區(qū)指數(shù)(The TIOBE Programming Community index)是編程語言流行度的指標,該榜單每月更新一次靶溜,指數(shù)基于全球技術工程師开瞭、課程和第三方供應商的數(shù)量。包括流行的搜索引擎墨技,如谷歌惩阶、必應、雅虎扣汪、維基百科断楷、亞馬遜、YouTube 和百度都用于指數(shù)計算崭别。具體的計算方式見這里:https://www.tiobe.com/tiobe-index/programming-languages-definition/冬筒。
值得注意的是,TIOBE 指數(shù)并不代表語言的好壞茅主,開發(fā)者可以使用該榜單檢查自身的編程技能是否需要更新舞痰,或者在開始構建新軟件時對某一語言做出選擇。
最后:
威心公粽號拿資料:速學Python
這里有我自己整理了一套最新的python系統(tǒng)學習教程诀姚,包括從基礎的python腳本到web開發(fā)响牛、爬蟲、數(shù)據(jù)分析赫段、數(shù)據(jù)可視化呀打、機器學習等。送給正在學習python的小伙伴糯笙!這里是python學習者聚集地贬丛,歡迎初學和進階中的小伙伴!