JavaRush /Java Blog /Random-TW /2021 年 Java 趨勢:Kotlin、微服務架構與 Kubernetes

2021 年 Java 趨勢:Kotlin、微服務架構與 Kubernetes

在 Random-TW 群組發布
發展的世界正在迅速變化。為了跟上變化,您需要了解這個世界正在發生的事情。了解趨勢可以讓您適應快速變化的趨勢。人工智慧、整合數量的增加和物聯網只是全球程式趨勢的一部分。JavaRush 向 Java 程式專家兼講師 Andrey Rodionov 詢問 2021 年 Java 會發生什麼事。2021 年 Java 趨勢:Kotlin、微服務架構與 Kubernetes - 1

對於哪些領域,Java 仍然是唯一的解決方案?

在不久的將來Java仍將是開發企業應用程式(即大公司用來賺錢的企業應用程式。此類應用程式具有龐大的程式碼庫和高可靠性要求 - ed.)和後端的主要平台之一。Java 非常適合微服務架構,儘管它不是編寫微服務的唯一選擇。

與 Java 相比,其他 JVM 語言(尤其是 Kotlin)的前景如何?

經過 Groovy 和 Scala 語言的大肆宣傳, Kotlin目前是領先的 JVM 語言。它已經成為 Android 開發的標準,但在 Java 企業領域它尚未贏得一席之地。許多流行的框架(SpringVert.xgRPCRSocket)也依賴它,允許它在自己內部使用。

Kotlin 是一種靜態類型、物件導向的程式語言,運行在 Java 虛擬機器之上,由 JetBrains 開發。也可以透過 LLVM 基礎設施編譯為 JavaScript 和許多平台上的可執行程式碼。

Kotlin特點:編譯為JVM字節碼或JavaScript,開源,語法易於閱讀,Kotlin程式可以使用現有的Java框架和函式庫。

Java 品質會因為發布間隔縮短而下降嗎?

它不會:只有語言中的創新準備好後才會發布,而不是像以前那樣等待幾年才能發布下一個版本。有些版本將不會被開發人員注意到,因為它們不會帶來任何超級流行的創新。

Spring框架:它會繼續擴展其生態系統以滿足多樣化的需求嗎?

Spring 生態系統繼續積極發展,我定期發現它的另一個子項目,這是我以前從未聽說過的。另外值得注意的是,作為 Spring 子專案出現的 Project Reactor 和 r2dbc 現在可以說已經成為反應式方法的標準。

Project Reactor 是實作反應式程式設計模型的 Java 8 函式庫。它建立在響應式流規範之上,響應式流規範是建立響應式應用程式的標準。

R2DBC(反應式關聯式資料庫連線)是一個致力於 SQL 反應式程式設計的開源專案。

雲端基礎設施IaaS、SaaS、PaaS的發展趨勢是什麼?雲端如何讓基礎架構更易於開發、部署、維護和擴展?

這裡的主要趨勢仍然是 Kubernetes 以及服務網格形式的圍繞它的基礎設施。每個有自尊心的雲端提供者都提供使用 Kubernetes 叢集的機會。如果應用程式編寫為在 Kubernetes 上執行,則部署和擴充會變得更加容易。

Kubernetes (K8s) 是用於自動化容器化應用程式的部署、擴展和管理的開源軟體。

Kubernetes 將組成應用程式的容器分組為邏輯單元,以便於管理和發現。

Kubernetes 跨大量主機管理和運行容器,並支援大量容器的共置和複製。該專案由 Google 發起,目前得到了許多公司的支持,包括 Microsoft、RedHat、IBM 和 Docker。

2021年還有哪些發展趨勢值得關注?

仍在興起的有趣趨勢之一是 GraalVM Native Image,它允許您將傳統的 Java 應用程式轉變為不需要 JVM 和相關程式庫即可運行的二進位應用程式。這樣的二進位檔案非常適合微服務架構和無伺服器方法,因為它允許您非常快速地啟動應用程式的新實例,並且不需要「預熱」JVM。

最近由於Java的發展,對年輕開發人員的要求是否改變了?

即使開發人員使用較新版本的 Java,大多數專案仍包含 Java 8 創新。因此,主要要求是了解 Stream API 和函數式程式設計元素了解微服務架構DockerKubernetes也很有好處,因為在現代專案中,新手開發人員將立即處理這些問題。

Stream API 是一種以函數式風格處理資料結構的新方法。Stream API(一個電腦程式與另一個程式通訊的方式的描述)的核心是資料流。

隨著 Java 8 的出現,Stream API 允許程式設計師編寫更簡短的程式碼,也就是簡化資料集的工作,特別是簡化過濾、排序和其他資料操作操作。如果沒有中間操作,則可以而且應該經常不使用流,否則程式碼會比不使用流更複雜。

Docker 是用於在容器化環境中自動部署和管理應用程式的軟體。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION