The Modern Java Platform - 2021年版
(jamesward.com)Javaプラットフォームの現在
-
Top-20プログラミング言語が3つ : Java, Scala, Kotlin
-
専門的で成熟した開発ツール : IntelliJ IDEA/VS Code, Gradle/Maven/sbt
-
生産的なフレームワーク : Spring Boot, Micronaut, Quarkus, Play, ZIO
-
Reactive Request : R2DBC, sttp, Quill
-
Reactive Event-Driven / Streaming : Akka, ZIO streams/Flink//ksqlDB/Spark
-
Command Query Responsibility Segregation (CQRS), Event Sourcing (ES), Conflict-free Replicated Data Types (CRDTs)
-
コンテナ : Dockerfile/Jib/Buildpacks, OpenJDKベースのイメージ群(AdoptOpenJDK), Distroless Java image
-
Spring Bootのコンテナ化, Micronautのコンテナ化 (Gradle | Maven), Quarkusのコンテナ化
-
Serverless とJVMオーバーヘッドの回避 : GraalVM Native Image
-
Fear, Uncertainty, Doubt, and Governance : OpenJDKはマルチベンダー/分散型ガバナンス構造を持つ正式なオープンソースプロジェクトである(ほとんどの場合、他のオープンソースプログラミング環境と似ている)
-
The Future : Javaエコシステムは複数の方向で革新を続けている。言語の側面ではJava, Kotlin, Scalaがそれぞれ異なる方向に進んでいるが、その効果はある程度共有されている
-
例えば
→ Scalaのパターンマッチングはプログラミング言語の中でも最高レベルで、これがKotlinとJavaにより良いパターンマッチングを促すのに役立った
→ JVMはガベージコレクションおよび性能面で驚異的な革新を見せており
→ Project Loom(JVM上のfiber と continuation)がさらに成熟すればReactive Programmingはより簡単になるだろう
→ GraalVMは驚くべき技術であり
→ Nettyはすでに io_uring(完全非同期のLinuxシステムコール)のサポート作業を開始している
→ CRDT と CQRSを通じた分散データがCloudstateのようなプロジェクトで勢いを得始めている
まだコメントはありません。