微軟:VS Code已成為Java巨頭!
原創(chuàng)作者 | 言征
出品 | 51CTO技術(shù)棧(微信號:blog51cto)
在Java領(lǐng)域,微軟氣候已成!時至今日,它已經(jīng)成長為Java巨無霸。
12月5日,微軟官方發(fā)布了一個里程碑式的消息:Visual Studio Code 已經(jīng)擁有超過250萬開發(fā)人員的社區(qū)。
250 萬是一個相當(dāng)大的成就。根據(jù)WordPress的托管解決方案服務(wù)商Kinsta統(tǒng)計,全球的Java開發(fā)人員大約有 900 ~ 1000 萬。
據(jù)微軟此前披露的數(shù)據(jù),2021年,VS Code的Java開發(fā)者數(shù)量150萬(同時還有 200 萬 Python 開發(fā)者、 100 多萬 C++ 開發(fā)者),2022年,Java開發(fā)者數(shù)量是200萬。發(fā)展速度可謂相當(dāng)迅猛。
那么,微軟這些年究竟對VS Code做了什么?
一、做大Java,VS Code的三大階段
1.初始版本,基本齊全
早在7年前,2016年9月,微軟就已經(jīng)向Visual Studio Code市場發(fā)布了Java語言支持?jǐn)U展的初始版本,當(dāng)時這個版本具備一些通用而有趣的功能列表,比如Maven項目、代碼補全、Javadoc 懸停、代碼導(dǎo)航、代碼參考、高亮等,吸引了一波Java開發(fā)者的加入。
圖片
此后,微軟團隊保持著每月1-2次的發(fā)布周期。
2.里程碑:Red Hat加入,如虎添翼
2021年,VS Code迎來了一個新的里程碑事件: Language Support for Java? by Red Hat 的1.0版本發(fā)布。RedHat開始進入微軟的 Visual Studio Code,并發(fā)布了 Java 語言支持計劃,為 Java 17 提供了官方支持。
微軟開發(fā)部門高級項目經(jīng)理Nick Zhu興奮地在博客中寫到:“我們相信這是Java對Visual Studio Code支持的一個重要里程碑,也是微軟、Red Hat以及整個Visual Studio Code和Java社區(qū)多年合作的結(jié)果。”
圖片
眾所周知,VS Code對Java的支持來源于擴展 Extension Pack for Java,而Java?by Red Hat的語言支持是Java擴展包的一個基本部分,提供了Java代碼編輯、完成、重構(gòu)和導(dǎo)航等基本組件。
在過去的幾年里,微軟一直在與Red Hat密切合作,并為Java語言服務(wù)器添加新功能。并致力于提高語言服務(wù)器的穩(wěn)定性。
此次1.0的發(fā)布,目標(biāo)是在Visual StudioCode上提供最好的Java開發(fā)體驗。
除了主要的Java17支持外,微軟還基于語言服務(wù)器構(gòu)建了各種Java擴展,并擴展了Visual Studio Code上的Java工具功能,包括項目管理、對Maven/Gradle的構(gòu)建工具支持以及更好的測試支持。
3.微軟發(fā)布自己的Java21
進入到2023年,微軟繼續(xù)加碼Java,在10月發(fā)布了微軟自己的Java21LTS版本。
圖片
微軟 Java 工程組首席 PM 經(jīng)理Bruno Borges表示:微軟版本的 Java 21包括語言和虛擬機規(guī)范的更改,包含一系列使Java 21與許多以前版本不同的功能,當(dāng)中就包括LLM的功能接入。
同時,人們也將此版本看成微軟擁抱開源的又一案例。有分析師評論道:“隨著 OpenJDK 21 向社區(qū)開放,微軟可以將其作為自己的 JDK 的一部分自由發(fā)布,并提供 21 版必須提供的所有新功能,并受到其自己的長期許可計劃的支持。”
二、微軟的Java野心未來6個月的路線圖
背靠250萬Java開發(fā)者,微軟擁抱Java的力度進入了新階段。為了紀(jì)念這一里程碑,這家軟件巨頭跟RedHat發(fā)布了未來六個月的路線圖。
圖片
首先在基礎(chǔ)開發(fā)體驗方面,該團隊提出了對于Java 21的全面支持、增強的Java代碼庫導(dǎo)航、新的高級調(diào)試功能的幾個方面,
除了 JDK 21的全面支持之外,VS Code還將致力于解決可靠性問題——據(jù)稱,這是 Java 開發(fā)者最常提到的問題之一。Nick在博客中表示:“我們希望提高平臺的穩(wěn)定性,以便您可以專注于代碼,而不必?fù)?dān)心語言服務(wù)器故障或崩潰,或代碼補齊故障。” 團隊的目標(biāo)是為用戶構(gòu)建穩(wěn)定一致的編碼體驗。”
對于兼容性問題,VSCode將致力于改善 Gradle 開發(fā)人員體驗并優(yōu)化性能,比如項目導(dǎo)入成功率的問題。值得一提的是,微軟剛在11月初宣布了開源項目Build Server for Gradle。Nick稱將繼續(xù)在此項目的基礎(chǔ)上進行構(gòu)建,以確保Visual Studio代碼中的構(gòu)建結(jié)果與運行Gradle命令獲得的輸出一致,這最終將提高可組合性。
增強的代碼智能補齊也是一個值得期待的功能。這里,Copilot 終于在博客中出現(xiàn)了:
“在接下來的幾個月中,我們將探索如何利用GitHub Copilot Chat來增強 Java 開發(fā)體驗,無論是查找錯誤、編寫單元測試、幫助調(diào)試代碼、添加依賴項還是管理 Java 項目。”
圖片
博客最后還提到了12月正式可用的Github Copilot Chat。Nick稱,開發(fā)人員很快將能夠與GitHub Copilot和GitHub Copilot Chat集成,以擴展他們的功能。“Visual Studio Code Java也不例外,在接下來的幾個月里,我們將探討如何利用GitHub Copilot Chat來增強您的Java開發(fā)體驗,無論是發(fā)現(xiàn)錯誤、編寫單元測試、幫助調(diào)試代碼、添加依賴項還是管理Java項目。”
圖片
三、Java在微軟的進化史
微軟與Java的恩怨歷史非常有時代色彩,從微軟與Sun之間的碰撞,再到如今的坐擁250萬之眾的Java開發(fā)者,我們看到了巨頭越來越明顯的開源生態(tài)取向的轉(zhuǎn)變。不管是Linux還是Java,都表現(xiàn)得非常積極。
圖片
2008年開始,微軟就開始了對Java的投入,包括搜索引擎Bing和微軟云Azure,并后續(xù)在2013年,Azure 成為了第一個擁有OenJDK商業(yè)支持的云平臺。
在納德拉領(lǐng)導(dǎo)下,Azure進一步加快了開放的步伐,拓展了Eclipse和Intellij的Toolkit支持。并跟VMware建立了伙伴關(guān)系,2016年微軟還加入了Eclipse基金會。
接下來2019年,微軟各種重磅的Java發(fā)布:比如Azure Spring Apps、Red Hat JBoss EAP支持,2021年發(fā)布 Microsoft Build of OpenJDK,
2022年,微軟宣布在內(nèi)部已經(jīng)有超過200萬JVM在產(chǎn)品上運行,并發(fā)布了針對Azure App的Java17支持。
正如微軟集團首席工程經(jīng)理Martijn Verbur所說,“微軟對開源生態(tài)系統(tǒng),特別是Java的積極態(tài)度,表明了他們幫助開發(fā)人員實現(xiàn)更多目標(biāo)的無限熱情。”
四、為什么微軟可以做到
從上述Java在微軟的進化史就可以看出,微軟Bing和Azure的發(fā)展,是驅(qū)使該公司采納和擁抱Java的客觀原因。
同時,微軟還通過與IBM、Oracle、Red Hat和VMware等行業(yè)領(lǐng)導(dǎo)者的戰(zhàn)略合作伙伴關(guān)系對Java生態(tài)系統(tǒng)發(fā)起“猛攻”,作出了重要的貢獻。
當(dāng)然,最重要的是,這家軟件巨頭的研發(fā)實力始終在線,始終站在科技發(fā)展的最前沿,在重新定義Java的遷移、現(xiàn)代化和整體開發(fā)體驗方面都處于領(lǐng)先地位,比如對PaaS服務(wù)、遷移工具的強大支持。再比如,生成式AI時代,微軟與OpenAI、Meta、英偉達(dá)等多家頭部企業(yè)的縱橫捭闔,成功讓Copilot技術(shù)向前邁進。
在今年11月的微軟Ignite上,微軟更是宣布:微軟將通過生成式AI和Copilot技術(shù)徹底改變Java開發(fā)的方式!
五、彩蛋:Java排名跌了
11月,編程TIOBE排名出來了。Java的排名較去年相比,下滑了一名,C++迎頭補上。
圖片
細(xì)心的朋友可能會發(fā)現(xiàn),Java近兩年的TIOBE指數(shù)一直有下降的趨勢。據(jù)流行的排行榜統(tǒng)計,Java 的TIOBE 指數(shù)從 2020 年的第1名下降到最新迭代的第4名。Python、C 和 C++ 已經(jīng)躍居其上,而 C# 緊隨其后。
圖片
但微軟并沒有放松對于Java的投入,歸根結(jié)底,還是Java作為編程領(lǐng)域的扛把子,擁有著大量充滿熱情的開發(fā)人員和豐富的開發(fā)生態(tài),不能等閑視之。
不過令人吃驚的是,微軟對于Java的野心,實現(xiàn)的速度之快,的確值得眾多IDE深思。























