The Modern Java Platform – Ausgabe 2021
(jamesward.com)Der aktuelle Stand der Java-Plattform
-
3 Top-20-Programmiersprachen: Java, Scala, Kotlin
-
Professionelle und ausgereifte Entwicklungswerkzeuge: IntelliJ IDEA/VS Code, Gradle/Maven/sbt
-
Produktive Frameworks: 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)
-
Container: Dockerfile/Jib/Buildpacks, OpenJDK-basierte Images (AdoptOpenJDK), Distroless-Java-Image
-
Spring Boot Containerization, Micronaut Containerization (Gradle | Maven), Quarkus Containerization
-
Serverless und Vermeidung von JVM-Overhead: GraalVM Native Image
-
Fear, Uncertainty, Doubt, and Governance: OpenJDK ist ein reguläres Open-Source-Projekt mit einer Multi-Vendor-/verteilten Governance-Struktur (in den meisten Fällen ähnlich wie andere Open-Source-Programmierumgebungen)
-
The Future: Das Java-Ökosystem innoviert weiterhin in verschiedene Richtungen. Sprachlich entwickeln sich Java, Kotlin und Scala unterschiedlich weiter, aber die Effekte werden in gewissem Maß geteilt
-
Zum Beispiel
→ Das Pattern Matching von Scala gehört zu den besten unter den Programmiersprachen und hat dazu beigetragen, besseres Pattern Matching in Kotlin und Java anzustoßen
→ Die JVM hat enorme Innovationen bei Garbage Collection und Performance gezeigt
→ Wenn Project Loom (Fiber und Continuation auf der JVM) ausgereifter wird, dürfte Reactive Programming einfacher werden
→ GraalVM ist eine erstaunliche Technologie
→ Netty hat bereits mit der Arbeit an der Unterstützung von
io_uring(vollständig asynchroner Linux-Systemaufruf) begonnen→ Verteilte Daten über CRDT und CQRS beginnen in Projekten wie Cloudstate an Dynamik zu gewinnen
Noch keine Kommentare.