Kotlin

出典: フリー百科事典『ウィキペディア(Wikipedia)』

出典: フリー百科事典『ウィキペディア(Wikipedia)』
検索に移動
Kotlin
Kotlin
Kotlinのロゴ
パラダイム オブジェクト指向プログラミング関数型プログラミング Edit this on Wikidata
登場時期 2011年(10年前) (2011
設計者 アンドリー・ブレスラフ、ドミトリー・ジェメロフ
開発者 ジェットブレインズ Edit this on Wikidata
最新リリース 1.4.32/ 2021年3月30日(10日前) (2021-03-30[1]
型付け 静的型付け
方言 Gradle Kotlin DSL
影響を受けた言語 GroovyC Sharp、Gosu、JavaRubyJavaScriptScalaSwift Edit this on Wikidata
プラットフォーム JavaプラットフォームAndroid含む), JavaScript実行環境, FreeBSD, Linux, macOS, Windows, iOS
ライセンス Apache-2.0 Edit this on Wikidata
ウェブサイト kotlinlang.org ウィキデータを編集
拡張子 kt、kts Edit this on Wikidata
テンプレートを表示

Kotlin(コトリン)は、ジェットブレインズのアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、静的型付けオブジェクト指向プログラミング言語である。

開発経緯[編集]

Kotlin言語は、ロシア連邦レニングラード州都のサンクトペテルブルクにある、ジェットブレインズの研究所で生まれた。

ジェットブレインズ社は JavaRubyPython などのプログラミング言語による開発環境などを開発して販売してきた。Kotlin言語は、同社の経験を活かしJava言語をもっと簡潔・安全になるように改良した産業利用向け汎用言語として開発され、2011年7月20日に発表された。

Java仮想マシン上で動作するため、Java言語で書かれたプログラムと同程度に速くコンパイルされ同程度に速く動作するとしている。

Java言語に望まれている機能であっても互換性を保つために実現できていない機能や、将来のJava言語の仕様で実現が予定されている機能から、有用と思われる機能を採用した。また、Java仮想マシンで動く点で似ているスクリプト言語 Groovy関数型プログラミング言語の要素が強い Scala から、機能や簡易記法(糖衣構文)を採用した。そのほか、ジェネリクスの構文などでC#の影響を受けている部分もある[2]

歴史[編集]

2012年2月14日KotlinApacheライセンス バージョン2.0に基づいてオープンソース化された[3][4]

アプリケーションプログラミングインタフェース[5]が公開され、ウェブサイト上でのデモンストレーション[6][7] のほか、スタンドアローンコンパイラの形と同社提供の統合開発環境であるIntelliJ IDEAプラグインとして、マイルストーン安定版「M1」が2012年4月12日より提供[8]された。

「M2」では言語機能が強化されたほか、Android 上の開発および動作も可能となり、JavaScript へのコンパイルもサポートされた[9]。「M3」では約400件の障害修正を行ない、性能向上、型引数推論の強化などを行った[10]。「M4」で128件の障害修正を行ない、型引数推論の高速化、JDK 7 対応、データクラスの copy メソッド新設などを行った[11]

Kotlin 1.0は、2016年2月15日にリリースされた。これは最初の安定版リリースであり、JetBrainsは以降のバージョンで長期的に後方互換性を維持することを約束している[12]

2018年10月29日にリリースされたKotlin 1.3の一部として、Kotlinのコードよりネイティブバイナリを生成する「Kotlin/Native」のベータ版がバンドルされた[13]

2019年、GoogleはKotlinをAndroidアプリケーション開発の推奨言語に指定すると発表した[14]

名称[編集]

コトリン島にちなんで命名された。コトリンは、開発の地サンクトペテルブルクに近いバルト海フィンランド湾にあり、全長約12kmの細長い島である。

もともと Kotlin というのはやかんを表すフィンランド語であり、Kotlin 言語のロゴマークもやかんである。

公式サイトには[15]「この島から名前が付いたコトリン型駆逐艦というのがありますが、Kotlin 言語は別にクラスを駆逐しようというわけではありません」や、Java の由来がコーヒーであることにかけて「この島ではコーヒーなどの外来植物はあまり作っていないと思います」というジョークが掲載されている。

特徴[編集]

Java 言語よりも簡潔に書けることを目指している。

特徴的な機能は以下のとおり[16]

構文規則的な特徴はScalaに近く、文の末尾にセミコロンが不要であり、また「変数名 : 型名」の順序で変数を宣言する。型推論を様々な場面でサポートする。

統合開発環境[編集]

同社提供の統合開発環境 IntelliJ IDEA で利用できる。EclipseNetBeansでもKotlinプラグインを提供している。Android StudioでもKotlinによるAndroidアプリケーション開発を標準でサポートしている(3.0以降)。

また、同社提供のC/C++向け統合開発環境 CLion はKotlin/Nativeをサポートしている。

関連項目[編集]

脚注[編集]

[脚注の使い方]
  1. ^ Releases Kotlin 1.4.32”. Kotlin Foundation. 2021年4月9日閲覧。
  2. ^ Generics: in, out, where - Kotlin Programming Language” (英語). Kotlin. 2020年9月7日閲覧。
  3. ^ February 14. “Language of the Month: Kotlin”. Dr. Dobb's. 2020年9月7日閲覧。(英語)
  4. ^ Java言語「Kotlin」、オープソース化”. 2018年6月8日閲覧。
  5. ^ kotlin-stdlib - Kotlin Programming Language” (英語). Kotlin. 2020年9月7日閲覧。(英語)
  6. ^ Kotlin Playground: Edit, Run, Share Kotlin Code Online”. play.kotlinlang.org. 2020年9月7日閲覧。(英語)
  7. ^ JetBrainsの新言語「Kotlin」を Web ブラウザで試してみよう!”. 2018年6月8日閲覧。
  8. ^ Kotlin Programming Language by JetBrains – Kotlin Blog” (英語). JetBrains Blog. 2020年9月7日閲覧。(英語)
  9. ^ Kotlin M2 is Out!” (英語). The Kotlin Blog. 2021年4月2日閲覧。(英語)
  10. ^ Kotlin M3 is Out!” (英語). The Kotlin Blog. 2021年4月2日閲覧。(英語)
  11. ^ Kotlin M4 is Out!” (英語). The Kotlin Blog. 2021年4月2日閲覧。(英語)
  12. ^ Kotlin 1.0 Released: Pragmatic Language for JVM and Android” (英語). The Kotlin Blog. 2021年4月2日閲覧。(英語)
  13. ^ Roman Belov (2018年10月29日). “Kotlin 1.3 Released with Coroutines, Kotlin/Native Beta, and more”. 2018年10月31日閲覧。
  14. ^ Kotlin is now Google’s preferred language for Android app development”. 2021年4月2日閲覧。(英語)
  15. ^ Reference - Kotlin Programming Language” (英語). Kotlin. 2020年9月7日閲覧。
  16. ^ The Kotlin Programming Language(英語)[リンク切れ]
  17. ^ Coroutines basics”. Kotlin. Coroutines Guide. 2021年3月3日閲覧。