Kotlin für die Java-Entwicklung

Kotlin 1.3.6 ist da: Update bringt Kotlin Worksheets

Katharina Degenmann

© Shutterstock/ SergioVas

Kotlin 1.3.6, die neueste Version der Programmiersprache von JetBrains, wurde veröffentlicht und darin einiges überarbeitet. Neben Verbesserungen hinsichtlich des Java-Kotlin-Konverters werden mit dem neuen Release außerdem die sogenannte Kotlin Worksheets eingeführt.

Kotlin ist eine plattformübergreifende Programmiersprache, die in Bytecode für die JVM übersetzt wird. Nun hat JetBrains Version 1.3.60 seiner Programmiersprache veröffentlicht und präsentiert damit das sechste Release der 1.3-Reihe. Zwar ist die Zahl an Neuerungen überschaubar, doch insbesondere im Sachen Tooling macht Kotlin 1.3.6 einen großen Schritt nach vorne.

Kotlin Worksheets

Ganz neu mit an Bord sind die sogenannten Kotlin Worksheets. Kotlin Worksheets bieten Entwicklern die Möglichkeit, mit der eigenen Codebasis zu experimentieren und die Ergebnisse sofort angezeigt zu bekommen. Inhaltlich und technisch ähneln sie daher den Scratch-Dateien, mit denen ebenfalls kleine Experimente mit der eigenen Codebasis durchgeführt werden können. Der Hauptunterschied zwischen den beiden besteht darin, dass Worksheets Teil des Projekts sind, d.h. sie können in einem VCS gespeichert und gemeinsam genutzt werden, während Scratches für die Verwendung außerhalb eines Projekts vorgesehen sind.

Optimierung des Abgleichs von Inline-Klassen

Eine Änderung, die auf eine einfachere Anwendung mit Kotlin abzielt, betrifft die sogenannten Inline-Klassen. Bislang verursachte der Vergleich zweier Instanzen von Inline-Klassen ein unnötiges Verpacken der zugrunde liegenden Werte. Im Bytecode wird für jede Inline-Klasse eine spezielle statische Methode equals-impl0 erzeugt, die die Werte vergleicht. Um zusätzliches Verpacken zu vermeiden, wird in Kotlin 1.3.6 der Vergleich bei nicht verpackten Instanzen daher verdeckt bzw. unter der Haube aufgerufen.

Das hat allerdings zur Folge, dass es derzeit nicht möglich ist, equals/hashCode für Inline-Klassen zu überschreiben.

Tooling-Verbesserungen

Ein besonderer Fokus lag zudem auf der Optimierung im Bereich Tooling. Darunter fällt zum einen der Java-Kotlin-Konverter, der nun in der Lage ist, mehrere Dateien auf einmal zu konvertieren und eine gemeinsame Analyse durchzuführen. Durch das Einbeziehen der anderen Dateien verspricht sich das JetBrains-Team ein besseres Endergebnis.

In Sachen Debbuging können nun Functions Breakpoints im Kotlin-Code genutzt werden. Werden diese im Kotlin-Code gesetzt, stoppt der Debugger die Ausführung beim Eingeben oder Beenden der entsprechenden Funktion. Bei Bedarf lassen sich zudem auch andere Eingabebedingung einstellen, wie es in den Release Notes heißt.

Kotlin/Native

In diesem Update wurden außerdem eine Reihe von Verbesserungen an Kotlin/Native vorgenommen, genauer gesagt am Kotlin/Native-Compiler. Koltin 1.3.6 ist beispielsweise mit den neuesten Werkzeug-Bits kompatibel und bringt daher Support für XCode 11 und LLVM 8.0l. Über Unterstützung dürfen sich auch die suspend Callable-Referenzen freuen. Und auch Thread-sicheres Tracking von Objective-C weak/shared-Referenzen hin zu Kotlin-Objekten ist zukünftig möglich.

Kotlin/JS

Auch Kotlin/JS-Nutzer haben Grund zur Freude, denn mit dem neuen org.jetbrains.kotlin.js-plug-in werden zum einen Source Maps unterstützt und zum anderen test runners mit Verbesserungen ausgestattet.

Source Maps werden für den Code nun automatisch generiert. Das soll es maßgeblich einfacher machen, den eigenen Code zu debuggen, da es beim Auftreten eines Fehlers lesbare Stack-Traces liefert und bei Problemfällen mit dem Browser Entwicklertools zur Verfügung stellt – inklusive Breaking Points, Codekommentaren, Informationen über den lokalen Scope usw.

 

Quelle: JetBrains

Weitere Neuerungen

Überdies unterstützt das Kotlin-Eclipse-Plug-in nun die experimentelle inkrementelle Kompilierung für einzelne Module. Darüber hinaus berichtet das JetBrains-Team, dass Interface-Aufrufe nun bis zu fünfmal und Typprüfungen bis zu 50-mal schneller seien.

Alle weiteren Informationen zu Kotlin 1.3.6 und ein kleiner Ausblick auf Kotlin 1.4 werden in den Release Notes vorgestellt.

Geschrieben von
Katharina Degenmann
Katharina Degenmann
Katharina ist hauptberuflich hilfsbereite Online- und Print-Redakteurin sowie Bücher- und Filme-Junkie. Nebenbei ist sie Möchtegern-Schriftstellerin, die heimlich hofft, eines Tages ihr Geld als Kaffee-Testerin zu verdienen. Seit Februar 2018 arbeitet sie als Redakteurin bei der Software & Support Media GmbH, davor hat sie Politikwissenschaft und Philosophie studiert.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
4000
  Subscribe  
Benachrichtige mich zu: