首頁 > 書法

首次跌出“兵器譜”前三,碼農不愛Java了?

作者:由 鈦媒體APP 發表于 書法日期:2023-01-11

簡譜又叫什麼

圖片來源@視覺中國

文 | 鋅刻度,作者 | 陳鄧新,編輯 | 孟會緣

Java,垂垂老矣。

日前,被譽為程式語言界“江湖百曉生”的TIOBE釋出了2022年12月的程式語言排行榜,Python、C語言與C++位列榜單前三,而Java僅排名第四。

這是2001年TIOBE出道以來,Java首次與前三無緣。

畢竟,那些年Java雙手插兜,不知什麼是對手。

一時間,程式語言優劣之爭再起。

那麼,昔日常年霸榜的Java,為何走上了下坡路?英雄遲暮的Java,如今尚能飯否?Java的基本盤依然龐大,仍有重返巔峰的資本?

趕上好時代,也成為時代的“眼淚”

人多了就有江湖,有江湖的地方就有紛爭。

據公開資訊顯示,程式語言的數量繁多,僅GitHub上託管的就超過300種,但主流也就幾十來種。

這其中,Java被譽為“常青樹”,歷經風雨而不倒。

想當年,C語言以及其一脈相承的C++,成為桌面時代的技術底座,無論作業系統,或是遊戲引擎,還是桌面應用,背後都有它們的身影。

用一統江湖來形容,也不為過。

然而,江湖人才輩出,不服“武林盟主”的大有人在,Java就是其中一個。

1995年,初出茅廬的Java抓住網頁粗糙的痛點,從而一鳴驚人,成為江湖上冉冉升起的新星,甚至進入了微軟的視線。

彼時,比爾蓋茨曾感嘆:“Java是迄今為止設計的最好得語言。”

然而好景不長,

趕上好時代,也成為時代的“眼淚”

好在,Java沒有氣餒,在伺服器端上找到了生存的土壤,成為網站後臺處理資料的好幫手,這之後不斷攻城略地,成為江湖上一支不可忽視的重要勢力。

一名業內人士告訴鋅刻度:“伺服器端原本是C/C++的地盤,風颳不進雨水透不過,但當網頁從靜態走向動態之後,就應付不過來了,而Java在後臺響應複雜的網站表現得更好。”

一言以蔽之,Java趕上了好時代。

如若不是Web大潮到來,網站如雨後春筍般冒出,Java就沒有那麼大的用武之地,也談不上後來與C/C++分庭抗禮。

Java首次與前三無緣

儘管如此,Java登上神壇還要等到移動時代。

隨著智慧手機的普及,移動網際網路起勢,逐漸成為人們的“剛需”,Java也跟著扶搖直上九萬里,藉助Android打開了一個新世界的“大門”。

關於此,TIOBE的排名可為佐證。

TIOBE排行榜反映的是某個程式語言的熱門程度,2001年至2019年,Java一直是TOP 1的常客,中間偶有失落,但很快就回歸“王座”。

適合Web的程式語言不斷冒出,Java並非唯一選擇。

事實上,Java多年以來不乏挑戰者,C/C++一直虎視眈眈,Python、JavaScript、PHP等老牌玩家針鋒相對,Go、Ruby等新銳力量“野心勃勃”。

萬萬沒想到,最後的“新王”竟然是Python。

Python誕生於1990年,是一款比Java還老的程式語言,不經意間從一棵小樹苗默默長成為參天大樹。

正應了那句老話,老驥伏櫪志在千里。

這之後,Java的統治力大不如前,各路勢力躍躍欲試。

對於Java的“衰敗”,張文策深有體會。

畢業於2008年的張文策,並非計算機專業出身,而是與幾個要好的同學一道參加了Java培訓班,才半途入行。

“學這個,就圖可以多賺錢,沒別的意思。”張文策告訴鋅刻度迄今對培訓班仍有成見,“千萬不要信老師說的包就業,純粹是一個文字遊戲,包就業=包推薦就業,這中間的差別大了去了,嘿嘿!”

張文策的Java之旅並不順利,多數公司壓根沒考慮這種速成品,所幸彼時需求旺盛,最終在一家工作室找到了容身之地。

儘管如此,張文策並未氣餒。

在工作室積攢了一年多經驗之後,張文策開啟了跳槽模式,輾轉多家公司,在Java上也有了一定的造詣之後,也有了一個體面的offer。

然而,張文策更憂慮了。

想再進一步,就勢必進階為高階Java工程師,但這個進階頗為不易,除非是真的熱愛程式碼,否則僅衝著工資去,難上加難。

對此,張文策也心知肚明:“Java都捲成麻花了,大多幹的都不是Rocket Science,頂多算合格的螺絲釘。”

AI起勢,“新王”上位

2009年,甲骨文收購Sun,擁有了Java版權,次年與谷歌開啟了曠日持久的訴訟,直到2021年才塵埃落定。

甲骨文法務總管Dorian Daley 曾宣告:“谷歌偷走了 Java 技術,並且在長達十年的時間裡以一個壟斷者的姿態訴諸法律。”

張文策沒有等待甲骨文敗訴,心中就有了一個判斷:“誰敢用Java,誰就可能招惹甲骨文,那可是出了名的專利流氓,逮誰咬誰,去Java化是大勢所趨。”

Java 11 的應用佔比第一

因而,2018年之後,張文策選擇擁抱Python,投身炙手可熱的AI賽道。

Forrester副總裁兼首席分析師Jeff Hammond曾表示:“Python已被證明對從事人工智慧或機器學習型別的人非常非常有用!”

AI起勢,“新王”上位

譬如,當下紅得發紫的AI繪畫,從塗鴉走向了藝術創作,上演了一出AI與人類同臺競技的好戲,令相關從業者倍感憂慮。

更為糟糕的是,甲骨文“作死”。

“Java是被網際網路炒起來的,Python是被AI炒起來的,要永遠站到勝利者這一邊。”張文策稱。

眼下,AI逐步起勢,從夢想照進現實,賦能千行百業成為萬物互聯時代的基石。

與張文策不同,魏世傑對Java仍有信心。

作為大齡一線coder,魏世傑對唱衰Java之聲已感到疲憊:每隔一段時間,都有人冒出來質疑Java,是不是不行了?真的要涼了?到底啥時候死?已經過時了嗎?是否真的即將被取代?

“說真的,有沒有點新詞,翻來覆去還是那一套,早就聽膩了。”魏世傑如是說。

魏世傑告訴鋅刻度,TIOBE排名指的是熱度而非市場份額,Java的基本盤依然很紮實,擁躉者依然很壯觀。

據Jetbrains的資料顯示,2020年全球專業Java程式設計師約為520萬人,算上主要使用其他語言但也使用Java的程式設計師約為680萬人,其中51%在中國。

圖源:Jetbrains

而據GitHub釋出的《Octoverse 2021年度報告》顯示,2020年全球程式設計師為5600萬,其中中國共有程式設計師652萬。

此背景下,Python超越Java,也是順理成章的事情。

“Java是老了,又不是不能打了,現在都更新到jdk18了。”魏世傑認為老語言Java版本不斷更新、體驗也在不斷改善,與Python一樣有生命力,“不要聽外行胡說八道,看看招聘就知道了,市場不會騙人的。”

據職友集的資料顯示,2022年全國Java程式設計師的月平均工資是19。8K,較2021年下降了3%;其中,拿20K~30K工資的佔比最多,達27。7%。

Java是老了,又不是不能打了?

魏世傑進一步表示:“程式語言說白了就是一個生產工具,只有效率之分、場景之分,沒有高下之分,這就好比外賣不會關心騎哪個牌子的車,只關心一天到手賺多少。”

總而言之,桌面時代成就了C/C++,移動時代成就了Java,AI時代成就了Python,一個時代有一個時代的主題。

唯一不變的是,程式設計師永遠不過時。

(應受訪者要求,文中張文策、魏世傑皆為化名。)