Kotlinは8月22日(米国時間)、「Kotlin 1.3.50 released|Kotlin Blog」において、Kotlinの最新版となる「Kotlin 1.3.50」の公開を伝えた。今回のバージョンは品質の向上とツール機能の改善に加え、次の点が注目されている。

  • 新たな時間計測系APIの導入(プレビューという位置づけ)
  • 改善されたJava-to-Kotlinコンバータ
  • Gradle Kotlin/JSプロジェクトにおけるnpm依存関係の生成機能(実験段階)
  • IntelliJ IDEA UltimateでKotlin/Nativeコードをデバッグするためのプラグインの導入
  • マルチプラットフォームプロジェクトにおめるJavaコンパイルのサポート追加
  • IntelliJ IDEA Ultimateにおける新しいデバッグ機能 - 資料: Kotlin提供

    IntelliJ IDEA Ultimateにおける新しいデバッグ機能 - 資料: Kotlin

Kotlin ではnullチェックに関してNullPointerExceptionsの発生を抑えるためにnull可能な型を導入している。もちろん、Javaコードとの相互互換の関係でNullPointerExceptionsの発生を完全に避けることはできない。

こうした状況において、これまでは開発者を支援する目的でNullPointerExceptions以外の例外を発生させることでNullPointerExceptionsとの違いを開発者に伝えていた。しかし。これまでの開発を通じてこの方法の問題点が明らかになってきたと説明。

こうした問題を解決するため、Kotlin 1.4からはKotlinNullPointerException、IllegalStateException、IllegalArgumentException、TypeCastExceptionではなくjava.lang.NullPointerExceptionを利用するように変更するとしている。

変更は!!演算子、メソッドプリアンブルにおけるパラメータnullチェック、プラットフォームタイプ式nullチェック、非null型に対するas演算子などに適用される。ただし、開発者がこうした変更に対して対処すべきことはそれほど多くないという。