Kotlinチームは、プログラミング言語「Kotlin」の最新版となるバージョン1.8.20を公開した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Kotlinチームは2023年4月3日(米国時間)、プログラミング言語「Kotlin」の最新版となるバージョン1.8.20を公開した。
Kotlin 1.8.20では、言語、標準ライブラリ、コンパイラの機能が追加、改善された。パフォーマンス向上、ドキュメントの拡充も実施されている。
次世代コンパイラとして開発が進められている「Kotlin K2」コンパイラのα版が同梱され、テストできるようになった。Kotlin K2コンパイラを有効化するには、新しい言語バージョンをオプションとして指定するか、build.gradle(.kts)ファイルで指定する必要がある。
-language-version 2.0
kotlin {
   sourceSets.all {
       languageSettings {
           languageVersion = "2.0"
       }
   }
}
WebAssemblyは、Web(およびWeb以外の)プラットフォームを対象とした、サイズとロード時間の両面での効率性を高めるバイナリフォーマットだ。Kotlinチームは、Kotlinで記述されたコードをWebAssemblyバイナリとしてコンパイルできる「Kotlin/Wasm」を実験的機能として追加した。これにより、Kotlinを利用してパフォーマンスに優れるWebアプリケーションやサーバレス機能を開発するなど、Kotlinの活用対象が広がるとしている。
一方、Kotlinでは、LLVMを活用してさまざまなプラットフォームで利用できるバイナリに変換する「Kotlin/Native」も提供している。Kotlinチームは、Kotlin/Wasmの利点として、LLVMを利用する必要がなくなるため、Kotlin/Nativeよりもコンパイル速度が速く、JavaScriptとの相互運用やブラウザとの連携が容易になるとしている。
Kotlin/Wasmを利用するには、build.gradle(.kts)ファイルで以下のように有効化する必要がある。またKotlin/Wasmで生成したバイナリを実行するには、Google Chrome、Firefox、Microsoft Edgeの設定を変更する必要もある。
plugins {
    kotlin("multiplatform") version "1.8.20-RC2"
}
kotlin {
    wasm {
        binaries.executable()
        browser {
        }
    }
    sourceSets {
        val commonMain by getting
        val commonTest by getting {
            dependencies {
                implementation(kotlin("test"))
            }
        }
        val wasmMain by getting
        val wasmTest by getting
    }
}
Kotlin/Nativeコンパイラで対象としていた以下のプラットフォームが非推奨となった。バージョン1.9.20で削除される予定だ。
AutoCloseableインタフェースおよびBase64のエンコードとデコードが実験的機能として追加された。
GradleのJVMバックエンドのみで利用可能だったインクリメンタルコンパイル(変更した部分のみを再度コンパイルする方式)がデフォルトで動作する。
 Android開発用公式IDE「Android Studio Flamingo」(2022.2.1)が安定版に到達 UIやパフォーマンス改善など
Android開発用公式IDE「Android Studio Flamingo」(2022.2.1)が安定版に到達 UIやパフォーマンス改善など Kotlinとは――読み方、メリット、「Java」とのコード比較、実行までのチュートリアル
Kotlinとは――読み方、メリット、「Java」とのコード比較、実行までのチュートリアル AndroidデバイスとWindows PC間のファイル共有が簡単に Google、Windows用「Nearby Share」β版を公開
AndroidデバイスとWindows PC間のファイル共有が簡単に Google、Windows用「Nearby Share」β版を公開Copyright © ITmedia, Inc. All Rights Reserved.