JavaRush /Java Blog /Random-TW /喝咖啡休息#68。關於 Java 及其生態系的誠實看法。2021 年值得考慮的三種新 Java 工具

喝咖啡休息#68。關於 Java 及其生態系的誠實看法。2021 年值得考慮的三種新 Java 工具

在 Random-TW 群組發布

關於 Java 及其生態系的誠實看法

資料來源:Dev.to 好吧,我承認我的主要語言是 C#。但這是我對 Java 及其周邊生態系統的公正看法。我經常在 Java 中使用 bash 指令,看到它的所有缺點。例如,Java 沒有屬性,它本身沒有事件,沒有結構,沒有運算符重載,並且直到 Java 10 才沒有推理,因此沒有「var」。C# 裡面有一切!另外,由於缺少 LINQ、var 和 enum,我在 Java 中使用了 bash。然而我用 Java 寫了很多東西,特別是當我為 Android 創建應用程式時,但也為其他東西創建應用程式。我的第一個專案也是用 Java 寫的!於是,週五晚上,由於時間緊迫,我不得不用Java連續寫了幾個小時。猜猜我發現了什麼?溪流!喝咖啡休息#68。 關於 Java 及其生態系的誠實看法。 2021 年值得考慮的三種新 Java 工具 - 1顯然 Java 8 引入了線程!我對此一無所知!對於那些不知道的人來說,Streams 是 LINQ 的 Java 實作。我還發現Java 10有型別推斷,所以Java現在有了var函數!我不敢相信我的知識有多過時,但說實話,這是有原因的。這兩件事對我的思想產生了很大的影響!您是否知道 Java 總是檢查異常,但 C# 卻不會?我承認我真的很懷念C#中的這個功能!是的,沒有結構、屬性等,但該死的,它很優雅!我認為 Java 的設計迫使開發人員編寫更健壯的應用程式。而在 .NET 世界中,這很大程度上是由程式設計師自行決定。有些開發人員喜歡這些限制,而有些開發人員則喜歡自由。雖然兩種語言都相當安全,但 Java 顯然略佔優勢。那麼,為什麼大公司更青睞Java呢?我想我現在知道答案了!最讓我沮喪的是......在你在互聯網上看到的大多數程式碼範例中,這些高級功能並不總是被使用......我認為如果一個新的Java開發人員看到'var'寫在整個程式碼庫中,他會發瘋的!那麼流呢?什麼是流?Java 開發人員喜歡 For 迴圈!事實上,即使是 foreach 迴圈在 Java 世界中也相當罕見(也許有一個原因:For 迴圈更加優化)。但這些功能都不錯!我會進一步說這些功能太棒了!當我編寫 Android 應用程式並注意到 Android API 中幾乎沒有地方使用枚舉時,這真的讓我很痛苦!這是公平的,因為 Android 是很多年前編寫的。最讓我煩惱的是,每次需要在Android中使用Activity for Results函數時,我都必須使用常數,如下所示:int PICK_IMAGE_FROM_GALLERY = 3000 兄弟,這太瘋狂了!然而世界各地的人們已經開始接受它。甚至我。Java 還缺乏原生事件實作!如果它有像​​ C# 這樣的事件和委託就好了...(嘿,Java 語言的創建者,如果您正在閱讀本文,您需要添加事件!如果您已經擁有它們或正在開發它們,請告訴我)。現在我將告訴您 Java 生態系統中最大的缺陷是什麼。文件!!! Oracle 網站上雜亂且無用的文件看起來愚蠢且過時,處於 2007 年的水平。它甚至並不總是有程式碼範例。如果你開始尋找一個相對不尋常的功能或 API 方法,你會發現一個無聊的定義、聲明、參數、它屬於哪個套件 - 就是這樣。我認為這是荒謬的。你不覺得這很荒唐嗎?沒有程式碼片段嗎?因此,我們開發人員必須嚴重依賴像 StackOverflow 這樣的論壇,或者像 TutorialsPoint 這樣的其他程式網站...有時它們確實很有幫助,提供了展示此功能的良好程式碼範例,但有時它們並沒有那麼有用。我建議將 Microsoft 的 C# 文件與 Oracle 的 Java 文件進行比較…天上地下!不相信我?去查一下:甲骨文微軟。Microsoft 網站上的文件看起來很漂亮!他們甚至還有黑暗模式!我們開發者對黑暗模式非常著迷。Oracle 文檔怎麼樣?正如我所說,它仍然是 2007 年。也許那時候還沒有深色模式?所以,我想說Java太神奇了!但這種語言因過時的文件而受到很大影響。這些大多是舊文件和舊手冊,沒有突出顯示急需的新功能,例如線程、變數和枚舉。現在人們說 Java 開始過時了,將會被 Kotlin 取代,但我不同意。因為即使這是真的,他在很長一段時間內也不會取代她。這將需要很多很多年。你還記得Scala也試圖取代它嗎?那麼結果是什麼呢?Java 仍然統治著整個 JVM 生態系統。儘管我承認 Scala 與 Java 有很大不同,主要是在功能上。現在,終於...還有一件事比 Java 世界中的任何事情都更讓我感動。這就是獲取JDK。為什麼下載JDK這麼難?我的意思是,如果我需要 JDK,簡單的 Google 搜尋就會將我指向 Oracle 網站,我會去那裡找到我需要的 JDK 版本。到目前為止,一切都相對容易,但為了下載它,我需要註冊。為什麼我要在 Oracle 上建立帳戶,然後每週處理他們的電子郵件,而不是只下載 JDK?請記住,Java 從第一天起就是開源的!與 C# 不同的是,C# 直到 2015 年才開源。所以,我已經很沮喪並轉到谷歌搜尋結果中的第二個網站。它引導我訪問 OpenJDK 網站。我在那裡找到 JDK 並點擊“下載”。但是(令人驚訝!)他們提供了來自其他網站的 JDK 實現的連結!在這些網站中,有一個該死的 Oracle,但也有一個到 Red Hat 網站的連結。是的,紅帽很棒,它是世界上開源公司的先驅之一。好的,我要去他們的網站!我會從那裡下載它!我點擊此鏈接,找到我正在尋找的 JDK 版本,你猜怎麼著?我也必須在那裡註冊...(戲劇性的停頓)這真是悲傷...操它!這些人怎麼了?最後,我屈服並安裝了 Chocolatey(它類似於 apt-get,但適用於 Windows。我認為它是第一個廣泛分發和使用的 Windows 套件管理器)。所以在這之後我需要在 PowerShell 中寫一個簡單的指令,例如:choco install jdk-1.8。我做到了!(如果您是 C# 開發人員,您就會知道只需點擊 2-3 次即可輕鬆獲得 .Net SDK,無需註冊或類似操作)。總結一下我的長篇大論:Java 是一種很棒的程式語言。它美觀、可靠,並且擁有(在我看來)世界上最好的 IDE - 來自 JetBrains 的著名 IntelliJ IDEA。此外,Java 擁有非常有幫助的社群和龐大且多樣化的生態系統。我是這麼說的 - 一個 C# 開發人員...但我們需要更新文件。程式碼範例。API。我們需要讓取得 JDK 變得更容易。總的來說,Java 正在朝著正確的方向發展,雖然最近它的受歡迎程度可能有所下降,但這不會讓 Java 消失。多年來它一直位居世界最佳語言排行榜榜首!我一直使用Java,並且將來也會繼續這樣做。

2021 年值得考慮的三種新 Java 工具

資料來源:OpenSource 儘管 Python、Go 和 Node.js 很受歡迎,近年來也被積極用於實施人工智慧、機器學習和 Kubernetes 相關項目,但 Java 技術在企業應用程式開發中仍然發揮關鍵作用。根據 Developer Economics 的數據,2020 年第三季全球有 800 萬名企業 Java 開發人員。喝咖啡休息#68。 關於 Java 及其生態系的誠實看法。 2021 年值得考慮的三種新 Java 工具 - 2Java 程式語言已存在超過 25 年,並​​且不斷更新。新的工具和框架不斷湧現,可以增強您的應用程式和職業生涯。絕大多數 Java 平台都是為了實現具有動態行為的長時間運行的進程而創建的,旨在在伺服器或虛擬機器上運行。隨著 2014 年 Kubernetes 容器的出現,這種情況發生了變化。現在,在 Kubernetes 上運行 Java 時面臨的最大挑戰是:透過減少記憶體佔用、加快啟動和回應時間以及減少檔案大小來優化應用程式效能。

三個新的 Java 框架和工具

Java 開發人員一直在尋找將流行工具和開源專案整合到他們的 Java 應用程式中的最簡單方法。新的高效能工具顯著提高了開發效率,並鼓勵更多公司和個人開發人員使用 Java 堆疊。今天我們將討論三個新的 Java 框架和工具:

誇庫斯

Quarkus 專為開發雲端微服務和無伺服器應用程式而設計。它在 Kubernetes 等容器編排平台中具有快速啟動時間、較小的記憶體駐留集 (RSS) 大小以及較高的記憶體密度。根據 JRebel 的第九次年度報告,Java 開發人員中 Quarkus 的使用率增加了 6%(不到前一年的 1%)。Micronaut 和 Vert.x 分別成長至 4% 和 2%(去年約 1%)。

Eclipse JKube

透過 Eclipse JKube,Java 開發人員可以使用 Docker、Jib 或 Source-To-Image 建置策略來建立基於雲端 Java 應用程式的容器映像。該工具還在編譯時產生 Kubernetes 和 OpenShift 清單,並改善偵錯、監控和日誌記錄工具的體驗。

微輪廓

MicroProfile 解決了與最佳化 Java 微服務企業架構相關的問題,而無需引入新框架或重構整個應用程式。此外,MicroProfile 規範(例如 Health、Open Tracing、Open API、Fault Tolerance、Metrics、Config)隨著 Jakarta EE 的實現而不斷發展。

結論

很難說哪些 Java 框架或工具最適合企業 Java 開發人員。只要有機會改進 Java 堆疊並加速企業業務成長,我們就可以期待新的框架、工具和平台的出現。檢查它們,看看它們是否可以在 2021 年改進您的 Java 應用程式。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION