<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          微軟全力擁抱 Java!

          共 4106字,需瀏覽 9分鐘

           ·

          2022-11-01 12:10

          程序員的成長之路
          互聯(lián)網(wǎng)/程序員/技術(shù)/資料共享 
          關(guān)注


          閱讀本文大概需要 5.5 分鐘。

          來自:CSDNp(ID:CSDNnews)

          雖然一直以來,微軟的不少產(chǎn)品在很多層面都有使用 Java 語言,但近日其官網(wǎng)上的一則「Microsoft is committed to the success of Java developers」(微軟致力于 Java 開發(fā)者的成功)的公告正式吹響了微軟全面擁抱 Java 的號(hào)角。
          對(duì)此,我們也不禁好奇,繼構(gòu)建 C#、.NET、TypeScript、Visual BASIC、JScript 等語言之外,微軟為何要大費(fèi)周章地再去深入 Java?在本文中,我們將從近年來微軟的種種足跡中探尋原因。
          圖片

          微軟對(duì) Java 的最新動(dòng)作

          在這篇公告中,微軟開發(fā)者部總裁潘正磊(Julia Liuson)表示,“作為一家公司,我們致力于使 Java 開發(fā)人員盡可能地高效和高產(chǎn)。這一承諾意味著開發(fā)者能夠在任何操作系統(tǒng)上使用任何工具、框架和應(yīng)用服務(wù)器。”
          為此,微軟推出了一個(gè)專門針對(duì) Java 所有相關(guān)內(nèi)容的新網(wǎng)站(developer.microsoft.com/java),該網(wǎng)站提供了微軟 Java 云開發(fā)團(tuán)隊(duì)的最新內(nèi)容以及技術(shù)文檔、工具、資源、教程、視頻和代碼示例。
          圖片
          除此之外,微軟也在工具方向增加了對(duì) Java 的諸多支持,其中,在新版本的 VS Code 中帶來了更多 Spring 相關(guān)的新功能更新,譬如:
          • 其一,增加了查看實(shí)時(shí)進(jìn)程中的 Spring Bean 屬性。
          如果沒有 IDE 的支持,開發(fā)者必須編寫代碼來獲取 ApplicationContext 和調(diào)用 .getBeanDefinitionNames() 才能得到同樣的結(jié)果。比如說:

          System.out.println(Arrays.asList(applicationContext.getBeanDefinitionNames());

          在添加了這一功能之后,VS Code 可以展現(xiàn) Bean 的屬性信息,即它們是否是 Singleton、prototype 等,同時(shí)還可以用“defined”來標(biāo)記自己的 Bean,以保持事情的條理性。
          圖片
          • 其二,更好的 Spring 入門體驗(yàn)。
          通過讓 IDE 自動(dòng)加載 Initializr 的 HELP.md 文件,為使用 Spring Initializr 初始化的項(xiàng)目提供了更好的啟動(dòng)體驗(yàn)。事實(shí)上,HELP.md 包含了有用的信息,但過去大部分開發(fā)者都忽略了它的存在,如今隨著這一功能的改進(jìn),方便開發(fā)者上手。
          • 其三,Java Project Explorer 集成了 Maven 和 Gradle
          有點(diǎn)像 Intellij,微軟加強(qiáng)了 VS Code,使其更容易訪問最頻繁的構(gòu)建操作,如訪問訪問 POM 或調(diào)用 Maven。
          與此同時(shí),微軟并沒有把對(duì) Java 和 Spring 的支持局限于 VSCode,它還加強(qiáng)了對(duì) Intellij 和 Azure 的支持。

          微軟與 Java 的愛恨情仇

          當(dāng)然,以上僅是微軟近段時(shí)間為擴(kuò)建自己的 Java 生態(tài)版圖所做的一些工作。其實(shí),微軟對(duì)拿下 Java 開發(fā)者的“野心”也非一兩天之間才有的。
          如果說曾經(jīng)依靠 Windows 構(gòu)建起生態(tài)帝國的微軟不可一世,從藐視開源、嫌棄 Linux,再到開源、數(shù)字化浪潮下的“微軟愛 Linux”并穩(wěn)居開源貢獻(xiàn)榜單的 Top 之列,那么,它對(duì) Java 的態(tài)度也有這樣的一個(gè)轉(zhuǎn)變過程。
          在 Java 誕生的第二年,一群有敏銳的前瞻意識(shí)的人發(fā)現(xiàn)了這門語言的潛力,其中就包括了來自微軟的專家們。時(shí)任微軟 CEO 的比爾·蓋茨也曾評(píng)價(jià)道,“Java 是很長時(shí)間以來最優(yōu)秀的程序設(shè)計(jì)語言。”
          在此趨勢(shì)之下,微軟在 1996 年 3 月與還沒有被 Oracle 收購的 Sun Microsystems 簽訂了一份 Java 許可協(xié)議。可以說,微軟應(yīng)用 Java 的這一舉措也極大地推動(dòng)了 Java 自身的普及與發(fā)展。不過,好景并不長。
          在 1996 年 9 月的某一天,微軟瀏覽器部門主管向時(shí)任微軟 CEO 的比爾·蓋茨詳細(xì)解釋了 Java 給微軟帶來的威脅,并懇切提醒道:“Java 絕不僅僅是一種語言,它是 COM 的替代者(COM 即 Componet Object Model,在 Windows 中大量使用的編程模型)!”
          隨即,比爾·蓋茨給當(dāng)時(shí)身為微軟 CTO 的 Nathan Myhrvold 發(fā)了一封主題為“Java 運(yùn)行時(shí)成為操作系統(tǒng)”的郵件,并表示“我很擔(dān)心 Java/Javabean 和其運(yùn)行時(shí)到底會(huì)發(fā)展成怎樣、會(huì)讓多少人興奮。我真的在這個(gè)問題上失眠了,因?yàn)殡S著轉(zhuǎn)向更多基于服務(wù)器的應(yīng)用程序,似乎會(huì)讓人們易于使用我們競(jìng)爭對(duì)手的操作系統(tǒng)。”
          為了降低這樣的焦慮,微軟研發(fā)了一款 Java 集成開發(fā)環(huán)境,使用的語言是 J++。一定程度上可以將 J++ 視為是 Java 的一個(gè)變種,其語法、關(guān)鍵字等都與 Java 有異曲同工之處。
          這樣有些“擦邊球”的行為,引發(fā)了 Sun 公司的注意。于是,1997 年 11 月,Sun 公司以違反合同為由對(duì)微軟提起訴訟,指控微軟分發(fā)了與 Sun 不兼容的 Java 版本。Sun 于 1998 年 5 月修改了其訴訟書,添加了不正當(dāng)競(jìng)爭和侵犯版權(quán)的指控。
          彼時(shí) Sun 在法庭上辯稱,微軟將 Java 的“一次編寫,隨處運(yùn)行”功能視為對(duì) Windows 的威脅,因?yàn)?Java 降低了軟件開發(fā)人員為微軟操作系統(tǒng)編寫程序的動(dòng)力。據(jù) Sun 公司稱,微軟發(fā)布的 Java 版本與其 Windows 軟件配合得更好。Sun 的律師表示,這樣的舉動(dòng)威脅到 Java 提供跨平臺(tái)開發(fā)環(huán)境的能力。
          微軟強(qiáng)烈否認(rèn)有任何不當(dāng)行為,并堅(jiān)稱它堅(jiān)持與 Sun 簽訂的許可協(xié)議。該公司辯稱,微軟對(duì) Java 所做的任何更改都只是允許開發(fā)人員利用 Windows 特有的功能。
          歷經(jīng)三年之后,在 2001 年 1 月,兩家達(dá)成和解,最終以微軟同意向 Sun Microsystems 支付 2000 萬美元,并且永久禁止在其產(chǎn)品上使用“Java 兼容”商標(biāo)。不過,此時(shí)的微軟還可以繼續(xù)提供采用 Sun 開發(fā)的 Java 技術(shù)的現(xiàn)有產(chǎn)品,但這一場(chǎng)官司也讓微軟有了其他的想法。
          在這一年的 7 月,微軟宣布開始在 Windows XP 系統(tǒng)中不再支持 Sun 的 JVM,從而扶持自家的 .NET 平臺(tái),與 Java 分庭抗禮。

          為什么此時(shí)要對(duì) Java 展開攻勢(shì)?

          那要問微軟為何要在時(shí)下再次擁抱 Java,根據(jù)微軟官方的解釋是,「如今,越來越多的 Java 開發(fā)者正在考慮如何將現(xiàn)有的 Java 應(yīng)用程序遷移到云中,或者如何構(gòu)建新的云原生應(yīng)用程序。我們一直在努力讓您更輕松地使用您喜歡的工具和框架將 Java 應(yīng)用程序遷移到云中。然后,您可以使用您已經(jīng)了解和信任的相同應(yīng)用程序服務(wù)器和開源技術(shù)輕松部署和擴(kuò)展。」
          多年來,Java 已經(jīng)積累了龐大的開發(fā)者群體,且有數(shù)以萬計(jì)的設(shè)備使用 Java。在云時(shí)代下,微軟在產(chǎn)品研發(fā)過程中也添加了對(duì) Java 的高度支持。
          除了在上文提到了的 VS Code 之外,微軟在 Intellij IDEA、GitHub、Playwright、Apache Maven、Gradle 等工具方面,以及在某些產(chǎn)品上都有 Java 的身影。
          如微軟在搜索引擎 Bing 中的支持 Windows 開始菜單中的搜索功能,便是使用 Java 來執(zhí)行與索引相關(guān)的功能,同時(shí) Bing 橫跨 50,000 多臺(tái)服務(wù)器上有數(shù)十萬個(gè) JVM。
          在 2019 年 8 月,微軟收購了一家主營業(yè)務(wù)是 Java 性能優(yōu)化的公司——jClarity。2021 年,時(shí)間點(diǎn)有些巧合的是,彼時(shí) 4 月 5 日,美國最高法院在 Google 與 Oracle 之間關(guān)于在 Android 使用 Java 的訴訟案中,最終判定 Google 開發(fā) Android 使用的 Java API 代碼合理。次日,與此事沒有任何關(guān)系的科技巨頭微軟便推出了自家的 JDK 項(xiàng)目 Microsoft Build of OpenJDK 版本。
          圖片
          圖片
          來源:https://cdn.graph.office.net/prod/media/java/infographic-evolution-of-java-at-microsoft.pdf?v={1/string}
          整體而言,微軟此舉一方面是想要在 Java 的市場(chǎng)中站穩(wěn)腳跟,另一方面根據(jù)官方發(fā)布的 Java 演進(jìn)圖顯示,微軟在自己的基礎(chǔ)設(shè)施中大量使用 Java,特別是它的 Azure 生態(tài)系統(tǒng)(Azure Spring Cloud、Azure App Service、Azure Functions、Azure Kubernetes),為此它需要有自己的統(tǒng)一和通用的構(gòu)建方式。
          再者,正如 i-programmer 評(píng)價(jià)道,“微軟此舉還有將 Azure 推給 Java 開發(fā)者的宣傳動(dòng)機(jī),微軟試圖引誘他們,甚至通過提供免費(fèi)課程幫助他們遷移他們的應(yīng)用程序。”
          不過,歸根究底,對(duì)開發(fā)者而言,也是一個(gè)不錯(cuò)的消息。
          <END>

          推薦閱讀:

          這五款牛逼的 IDEA 插件,堪稱代碼質(zhì)量檢查利器!

          從0搭建公司SpringCloud Alibaba 微服務(wù)鑒權(quán)中心服務(wù)(詳細(xì)教程)

          互聯(lián)網(wǎng)初中高級(jí)大廠面試題(9個(gè)G)

          內(nèi)容包含Java基礎(chǔ)、JavaWeb、MySQL性能優(yōu)化、JVM、鎖、百萬并發(fā)、消息隊(duì)列、高性能緩存、反射、Spring全家桶原理、微服務(wù)、Zookeeper......等技術(shù)棧!

          ?戳閱讀原文領(lǐng)取!                                  朕已閱 

          瀏覽 57
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲中文字幕无码视频在线观看 | 精品欧美一级片大片AAAA级 | 国产免看一级a一片成人aⅴ | 日韩精品人妻中文字幕蜜乳 | 免费的成人网站在线观看 |