Kotlin
A concise multiplatform language developed by JetBrains
Kotlin プラグイン 2021.1 リリース:IDE のパフォーマンスとリファクタリングのサポートを改善
IntelliJ IDEA の最新リリースであるバージョン 2021.1 では、Kotlin プラグインが改善されています。 高速なコード補完とハイライト機能による開発エクスペリエンスの向上、IDE によるシグネチャー変更のサポート強化、プロパティを評価するためのデバッグエクスペリエンスの改善などを行っています。
この新しいプラグインをインストールするメリットは以下のとおりです。
- コード補完とハイライトの速度改善
- Variables ビューを使用したカスタム getter の評価
- IDE による Change Signature(シグネチャーの変更)リファクタリングのサポート強化
- 型引数のコード補完
- Kotlin コードのクラスダイアグラム
- その他の IDE の改善
この新リリースへの自動アップデート
IntelliJ IDEA は、新リリースが公開された時点で自動的にアップデートするためのオプションを提供します。
IntelliJ IDEA を初めてお使いになる場合は、最新の Kotlin プラグインがバンドルされた最新バージョンをダウンロードしてください。
コード補完とハイライトの速度改善
IDE によるコードのハイライトや補完候補の処理をに時間がかかる場合、快適なコーディングを楽しめないことがあります。 JetBrains はコードのハイライト表示とコード補完をシームレスに機能させたいと考えています。
新しい Kotlin プラグインでは、Kotlin コードのハイライト表示と補完処理のパフォーマンスが大幅に改善しています。
弊社のテスト結果によると、ハイライトの処理速度は 25%、コード補完の処理速度は 50% 超改善されています。これは、Java の場合とほぼ同等のパフォーマンスとなります。
新しいプラグインでの Kotlin コードのハイライト表示
以下は、Kotlin コードのハイライト表示速度を Kotlin プラグインの旧バージョン(2020.3)と新バージョン(2021.1)で比較したデータです。 この結果は、複雑な Kotlin ファイルでのコードハイライト動作をチェックする社内ベンチマークテストに基づいたものです。
新しいプラグインでの Kotlin コード補完
以下は、Kotlin コードの補完処理パフォーマンスをバージョン 2020.3 とバージョン 2021.1 で比較したデータです。 この結果は、複雑な Kotlin ファイルでのコード補完動作をチェックする社内ベンチマークテストに基づいたものです。
IDE によるシグネチャー変更のサポート強化
旧バージョンの Kotlin プラグインで Change Signature リファクタリングを使用したことのある方は、問題や制限事項に悩まされたことがあるかもしれません。また、警告が表示されずに具体的な問題の内容や原因を把握できない場合があったかもしれません。
新しい Kotlin プラグインにアップデートすると、Change Signature リファクタリングに対して実装された 40 件以上のバグ修正や改善によるメリットを享受できます。
特に重要な改善点をいくつかご紹介します。
- 出力コードに不具合が発生しうる大部分のケースを検出可能になりました。
- 言語横断的なリファクタリングを含む、継承リファクタリングに対する修正を行いました。
- プロパティを処理するための UX を改善しました。
- 新しいデフォルトパラメーター値の宣言方法を追加しました。
- バッククォートの処理を修正しました。
Variables ビューを使用したカスタム getter の評価
弊社の社内調査結果から、開発エクスペリエンスを向上させるには Kotlin のデバッグエクスペリエンスを大幅に改善する必要があることが分かっています。この取り組みを実施するため、すでに多くの計画が立てられています。
このリリースでは、Variables ビューでプロパティを評価するための小規模ながらも重要な改善を行っています。
従来、デバッグセッションではカスタム getter を持たないプロパティとバッキングフィールドを持つフィールドのみが表示されていました。 カスタム getter を持つプロパティは JVM で通常のメソッドとして表現されていたため、表示されていませんでした。 バージョン 2021.1 の Kotlin プラグインでは、このようなプロパティをすべて表示できます。また、必要に応じてプロパティ名の近くにある get()
をクリックして評価することもできます。
例えば、次のコードをデバッグする際には get()
メソッドを実行して versionString
の値を表示できます。
Debug ウィンドウでは、プロパティの値が表示されます。
この機能をお試しいただき、ご意見がある場合、こちらのチケットかこの記事のコメント欄でお知らせください。
型引数のコード補完
新しい Kotlin プラグインは、型引数のコード補完に対応しています。 従来はこのコードを IDE の支援機能に頼らず、手動で書く必要がありました。
今後はジェネリック関数の後で関数やプロパティのコード補完候補が表示され、必要な箇所で型引数が補完されます。 このような関数をリストから選択すると、IDE が先行するコードに適切な型引数を追加します。
以下の例では、IDE が自動的に <String>()
型を追加します。
IDE によって提案された補完候補を適用すると、以下のコードが完成します。
クラスダイアグラムによる Kotlin コードの構造レビュー
新リリースは、UML クラスダイアグラムによる Kotlin コードの構造レビューに対応しています。 ダイアグラムを作成するには、Project View で Diagrams | Show Diagram… | Kotlin Classes を選択してください。
その他の IDE の改善
Kotlin プラグインと IntelliJ Platform が同じコードベースに移動されて同時にリリースされるようになったため、次の機能によって Kotlin の開発エクスペリエンスを向上させることもできます。
- IntelliJ IDEA 2020.3 リリースで発表された Gradle run 経由の基本的なメモリプロファイラーの使用。
- コルーチン内のスレッドをブロックしている不適切な呼び出しに関する警告の取得。
- 三重引用符の使用と文字列連結に際して発生する言語インジェクションの問題の回避。
以下もご確認ください
- Kotlin プラグイン 2021.1 の新機能
- IntelliJ IDEA 2021.1 の新機能に関するページと動画。