Skip to main content

Kotlin überholt Scala und Clojure und wird zur zweitbeliebtesten Sprache im JVM-Ökosystem

Artikel von
jvm with logos feature

5. Februar 2020

0 Min. Lesezeit

Willkommen zu unserem jährlichen Bericht zum JVM-Ökosystem! Dieser Bericht präsentiert die Ergebnisse der größten jährlichen Umfrage zum JVM-Ökosystem. Dafür wurden in der zweiten Hälfte des Jahres 2019 über 2.000 Antworten gesammelt. Wir möchten uns bei allen bedanken, die teilgenommen und ihre Einblicke zu Java und Themen rund um die JVM mit uns geteilt haben.

Dieser Bericht besteht aus sechs Beiträgen:

  1. Bericht zum JVM-Ökosystem 2020 – Einführung

  2. 36 % der Entwickler sind im vergangenen Jahr von Oracle JDK zu einer alternativen OpenJDK-Distribution gewechselt

  3. 64 % der Entwickler geben an, dass Java 8 weiterhin die am häufigsten verwendete Version ist

  4. Kotlin überholt Scala und Clojure und wird zur zweitbeliebtesten Sprache auf der JVM

  5. Spring dominiert das Java-Ökosystem: 60 % nutzen es für ihre Hauptanwendungen

  6. IntelliJ IDEA dominiert den IDE-Markt: 62 % der JVM-Entwickler nutzen es

Außerdem gibt es einen liebevoll gestalteten PDF-Bericht, der all diese Informationen an einem Ort zum Download bereitstellt.

Welche JVM-Sprache verwenden Sie hauptsächlich für Ihre Anwendung?

Obwohl die Vielfalt der JVM-Sprachen in den letzten Jahren zugenommen hat, verwenden nach wie vor fast 9 von 10 JVM-Nutzern hauptsächlich Java.

Ein Grund für diesen über die Jahre hinweg konstant hohen Anteil ist, dass Java sich kontinuierlich weiterentwickelt. Viele Sprachkonstrukte und Paradigmen, mit denen sich andere JVM-Sprachen von Java abgrenzen wollten, wurden inzwischen auch in Java eingeführt und umgesetzt – darunter etwa die lokale Typinferenz und Lambdas. Der neue Java-Veröffentlichungszyklus sorgt außerdem dafür, dass Entwickler früher als bisher auf diese neuen Funktionen zugreifen können.

Trotz der starken Vorliebe für Java hat auch die Nutzung anderer JVM-Sprachen zugenommen. Besonders Kotlin, eine von JetBrains entwickelte Sprache, wurde in den letzten Jahren immer beliebter. Tatsächlich stieg der Anteil von Kotlin von 2,4 % laut dem Bericht des Vorjahres auf beeindruckende 5,5 %.

Code-Ansicht einer npm-Paketseite mit der Abhängigkeitsliste des Pakets class-transformer und GitHub-Links

Angesichts der nahtlosen Integration mit Java ist die zunehmende Verbreitung von Kotlin unter JVM-Nutzern keine Überraschung. Hinzu kommt, dass die Unterstützung von Kotlin in Frameworks wie Spring Boot die Entwicklung produktionsreifer Systeme erleichtert hat.

Es ist wichtig zu beachten, dass die Innovationen, die Kotlin vorantreibt, auch in die Weiterentwicklung von Java einfließen. Neuere Java-Versionen greifen Konzepte auf, die in Sprachen wie Kotlin beliebt und geschätzt sind. Es ist interessant zu beobachten, wie sich das auf die künftige Verbreitung der verschiedenen JVM-Sprachen auswirkt.

Schreiben oder warten Sie Java-Anwendungen? Verwenden diejenigen, die Java nicht hauptsächlich für ihre Anwendung nutzen, Java überhaupt?

Nicht jeder JVM-Entwickler verwendet Java als Hauptsprache. Den Antworten auf die vorherige Frage zufolge machen JVM-Entwickler, die für ihre Anwendungen hauptsächlich andere Sprachen nutzen, 13 % aus. Von dieser Gruppe verwendet die Mehrheit (70 %) Java bei der regulären Arbeit weiterhin in irgendeiner Form.

Das bedeutet, dass 96 % aller Befragten Java verwenden – entweder als Hauptsprache oder in geringerem Umfang in ihrer Anwendung. Nur 4 % der Befragten betreiben JVM-Anwendungen, die ausschließlich alternative JVM-Sprachen nutzen.

Zwei Ringdiagramme: 70 % Ja und 30 % Nein; 96 % verwenden Java und 4 % verwenden kein Java.

Verwenden Sie Java-Module in Ihren Java-Anwendungen oder planen Sie, diese einzusetzen?

Mit der Veröffentlichung von Java 9 wurden einige grundlegende Architekturänderungen eingeführt. Die bekannteste und folgenreichste davon war das Modulsystem, offiziell als Java Platform Module System (JPMS) bezeichnet. Diese neue Abstraktionsebene über Paketen ermöglicht die Entwicklung eines kleineren, besser auf den jeweiligen Zweck zugeschnittenen JDK.

Architekturänderungen dieser Größenordnung können ältere oder bestehende Systeme bei einer Migration jedoch stark beeinträchtigen. Wichtig ist allerdings: Sie müssen das Modulsystem in Java 9 und höher nicht verwenden. Sie können weiterhin den Classpath nutzen, während das Modulsystem alle Ihre JAR-Dateien unbemerkt im unbenannten Modul bündelt.

Auf die Frage, ob sie das Modulsystem verwenden oder dessen Einsatz planen, erhielten wir interessante Antworten: Nur 7 % der Befragten gaben an, es bereits zu nutzen. Die große Mehrheit der Teilnehmenden – mehr als 6 von 10 – verwendet JPMS nicht, während 29 % den Einsatz in Zukunft planen.

Donut-Diagramm: 7 % nutzen es bereits, 29 % planen die Nutzung und 64 % nutzen es nicht; mit Snyk-Logo

Wie einfach war die Einführung von Java-Modulen?

Bei der Einführung von Java-Modulen gehen die Einschätzungen zum Schwierigkeitsgrad auseinander. Ein Viertel der Befragten empfand den Einführungsprozess weder als schwierig noch als einfach. Ein erheblicher Anteil (25 %) stufte die Einführung von JPMS als eher schwierig ein (7/10 oder höher). Mittelwert, Median und Modalwert lagen jeweils bei 5/10. Den Antworten zufolge lässt sich festhalten: Die Einführung von Java-Modulen erfordert zwar Zeit und Aufwand, ist aber keine Raketenwissenschaft!

Liniendiagramm mit der Beschriftung „Mittelwert/Median/Modus“: Die Antworten reichen von sehr einfach bis sehr schwierig; der Höchstwert liegt bei 24 % für die Bewertung 5.

Haben Sie Java-Module beim Schreiben neuer Anwendungen oder bei der Migration älterer Anwendungen eingeführt?

Neues einzuführen gilt als einfacher, wenn Sie an einem Greenfield-Projekt arbeiten. Bei der Entwicklung einer Anwendung von Grund auf müssen Sie sich meist nicht mit der komplexen Weiterentwicklung eines Softwareprojekts auseinandersetzen. Bei der Einführung von Java-Modulen ist das jedoch nicht immer der Fall. Laut unserer Umfrage führte fast die Hälfte der Befragten Java-Module im Zuge der Migration älterer Anwendungen ein.

Ringdiagramm mit 54 % für das Schreiben neuer Anwendungen und 46 % für die Migration älterer Anwendungen, mit dem Snyk-Logo.

Dieser Bericht hat noch mehr zu bieten! Welchen Abschnitt möchten Sie als Nächstes lesen?

  1. Bericht zum JVM-Ökosystem 2020 – Einführung

  2. 36 % der Entwickler sind im vergangenen Jahr von Oracle JDK zu einer alternativen OpenJDK-Distribution gewechselt

  3. 64 % der Entwickler geben an, dass Java 8 weiterhin die am häufigsten verwendete Version ist

  4. Kotlin überholt Scala und Clojure und wird zur zweitbeliebtesten Sprache auf der JVM

  5. Spring dominiert das Java-Ökosystem: 60 % nutzen es für ihre Hauptanwendungen

  6. IntelliJ IDEA dominiert den IDE-Markt: 62 % der JVM-Entwickler nutzen es

Laden Sie jetzt den Bericht herunter!