Kotlin
A concise multiplatform language developed by JetBrains
Kotlin-Plugin 2021.1 veröffentlicht: bessere IDE-Performance und erweiterte Refactoring-Unterstützung
Das neueste Release von IntelliJ IDEA, Version 2021.1, enthält ein verbessertes Kotlin-Plugin. Dieses bietet eine schnellere Code-Completion und Syntaxhervorhebung, eine erweiterte IDE-Unterstützung beim Ändern von Signaturen, eine verbesserte Auswertung von Eigenschaften beim Debugging und vieles mehr.
Durch die Installation des neuen Plugins kommen Sie in den Genuss der folgenden Vorteile:
- Schnellere Code-Completion und Syntaxhervorhebung
- Auswertung von benutzerdefinierten Gettern direkt in der Variablenansicht
- „Change Signature“-Refactoring mit verbesserter IDE-Unterstützung
- Code-Completion für Typargumente
- Klassendiagramme für Ihren Kotlin-Code
- Weitere IDE-Verbesserungen
Automatisches Update auf die neue Version
IntelliJ IDEA ermöglicht ein automatisches Update auf die neue Version, sobald diese verfügbar ist.
Wenn Sie IntelliJ IDEA noch nicht nutzen, erhalten Sie automatisch das neueste Kotlin-Plugin, wenn Sie die aktuelle Version von IntelliJ IDEA herunterladen.
Schnelle Code-Completion und Syntaxhervorhebung
Manchmal macht das Schreiben von Code weniger Spaß als es sollte – dies gilt insbesondere, wenn man bei der Syntaxhervorhebung oder der Code-Completion auf die IDE warten muss. Unser Ziel ist es, Syntaxhervorhebung und Code-Completion verzögerungsfrei für Sie bereitzustellen.
Das neue Kotlin-Plugin bietet erhebliche Verbesserungen in Bezug auf die Syntaxhervorhebung und Completion von Kotlin-Code.
Gemäß unseren Tests wurde die Performance bei der Hervorhebung um ca. 25% und bei der Code-Completion um mehr als 50% verbessert – dies bringt die Leistung viel näher an das von Java gewohnte Niveau heran.
Kotlin-Syntaxhervorhebung mit dem neuen Plugin
Hier sehen Sie einen Vergleich der Hervorhebungsgeschwindigkeit für Kotlin-Code zwischen der Vorgängerversion 2020.3 und der neuen Version 2021.1 des Kotlin-Plugins. Die Ergebnisse basieren auf unseren Benchmark-Tests, bei denen die Syntaxhervorhebung in komplexen Kotlin-Dateien überprüft wird.
Code-Completion für Kotlin mit dem neuen Plugin
Hier ist ein Performancevergleich für die Kotlin-Code-Completion zwischen Version 2020.3 und Version 2021.1. Die Ergebnisse basieren auf unseren Benchmark-Tests, bei denen die Code-Completion in komplexen Kotlin-Dateien überprüft wird.
Signaturänderung mit verbesserter IDE-Unterstützung
Wenn Sie das Refactoring Change Signature in früheren Versionen des Kotlin-Plugins verwendet haben, sind Ihnen möglicherweise Probleme und Einschränkungen aufgefallen, bei denen nicht immer klar war, was genau in diesen Fällen schiefgelaufen war.
Durch eine Aktualisierung auf das neue Kotlin-Plugin profitieren Sie von mehr als 40 Fehlerkorrekturen und Verbesserungen beim Change-Signature-Refactoring.
Hier sind einige der wichtigsten Verbesserungen:
- Erkennung von weiteren Fällen, die zu fehlerhaftem Code führen könnten.
- Korrekturen für das Refactoring von Vererbungen, auch bei sprachübergreifendem Refactoring.
- Verbesserte Benutzererfahrung bei der Arbeit mit Eigenschaften.
- Eine weitere Möglichkeit, den Standard-Parameterwert zu deklarieren.
- Korrekte Verarbeitung von Backticks.
Auswertung von benutzerdefinierten Gettern direkt in der Variablenansicht
Nach unseren Untersuchungen sind beim Kotlin-Debugging signifikante Verbesserungen erforderlich, um eine bessere Entwicklererfahrung zu bieten. Wir haben bereits eine Reihe von Plänen in Arbeit, um diese Verbesserungen zu realisieren.
Diese Version enthält eine kleine, aber wichtige Verbesserung bei der Auswertung von Eigenschaften in der Ansicht Variables.
Bisher waren während einer Debugging-Sitzung nur Eigenschaften ohne benutzerdefinierte Getter-Methode sowie solche mit einem Unterstützungsfeld zu sehen. Eigenschaften mit einer benutzerdefinierten Getter-Methode wurden nicht angezeigt, da sie in der JVM als reguläre Methoden erscheinen. In Version 2021.1 des Kotlin-Plugins können Sie alle diese Eigenschaften sehen und bei Bedarf auswerten, indem Sie auf get()
neben dem Objektnamen klicken.
Wenn Sie beispielsweise den folgenden Code debuggen, können Sie mit get()
den Wert von versionString
abrufen:
Im Debug-Fenster können Sie die Werte der Eigenschaften sehen:
Wir würden uns sehr freuen, wenn Sie diese Funktion ausprobieren und uns in diesem Ticket oder im Kommentarbereich dieses Blogbeitrags Feedback geben könnten.
Code-Completion für Typargumente
Das neue Kotlin-Plugin bietet Code-Completion für Typargumente. Bisher musste man diesen Code manuell schreiben, ohne die Unterstützungsfunktionen der IDE nutzen zu können.
Jetzt schlägt die Code-Completion Funktionen und Eigenschaften nach generischen Funktionen vor und stellt Typargumente bei Bedarf wieder her. Wenn Sie eine solche Funktion von der Liste auswählen, ergänzt die IDE den vorangehenden Code um das korrekte Typargument.
Im folgenden Beispiel fügt die IDE automatisch den Typ <String>()
hinzu:
Nachdem Sie den Vorschlag der IDE übernommen haben, erhalten Sie den folgenden Code:
Überblick über Ihre Kotlin-Codestruktur dank Klassendiagrammen
Mit der neuen Version können Sie die Struktur Ihres Kotlin-Codes mithilfe von UML-Klassendiagrammen überprüfen. Um ein Diagramm zu erstellen, wählen Sie in der Project-Ansicht Diagrams | Show Diagram… | Kotlin Classes.
Weitere IDE-Verbesserungen
Da das Kotlin-Plugin und die IntelliJ-Plattform in derselben Codebasis zusammengeführt wurden und neue Versionen jetzt gleichzeitig erscheinen, stehen Ihnen die folgenden Möglichkeiten zur Verfügung, um Ihre Kotlin-Erfahrung optimieren:
- Sie können über Gradle Run den einfachen Speicherprofiler verwenden, der beim Release von IntelliJ IDEA 2020.3 vorgestellt wurde.
- Bei problematischen Thread-Blocking-Aufrufen in Coroutinen können Sie Warnungen erhalten.
- Bei der Verwendung von dreifachen Anführungszeichen und beim Verketten von Zeichenfolgen werden Probleme mit der Sprachinjektion vermieden.
Siehe auch
- Das ist neu im Kotlin-Plugin 2021.1
- Das ist neu in IntelliJ IDEA 2021.1 – Dokumentation und Video.