KotlinDive

プログラミング言語 Kotlin についての入門ブログです。

Kotlinについて

1. Kotlinとは何か?

Kotlin(コトリン)はロシアのJetBrains社によって開発された
モダンなマルチプラットフォームアプリ向けの静的型付けなプログラミング言語です。

公式サイト
公式サイトのドキュメントなど

2. Kotlinで何ができるのか?

Webアプリではクライアント、サーバーの両方に対応し、モバイルではAndroidアプリを作成できます。
また様々なプラットフォーム向けのネイティブアプリの開発もできます。

JVM上で動作するアプリ

Java仮想マシン(Java Virtual Machien)上で動作するアプリケーションの作成を行うことができます。
Javaで作成されているレガシーなライブラリとも完全に相互運用できます。

Androidで動作するアプリ

Androidアプリを作成できます。
上記のように、すでにJavaで作成されている様々な有用なライブラリをすべて利用することができます。

Webブラウザで動作するアプリ

KotlinはJVMだけと思われている方もいるかもしれませんが、JavaScriptに変換しビルドすることができます。

仮想マシンを利用しないネイティブなアプリ

対応しているプラットフォームは以下のとおりです。

3. なぜKotlinを利用するのか?

Javaでいいじゃん。と思われる方も多いのではないでしょうか?
しかし、Javaに比べてKotlinはプログラミング言語としての設計がモダンなため、 Javaを利用するよりも開発の生産性をあげる事ができます。
Kotlinの主なメリットは下記のとおりです。

簡潔でわかりやすいコーディング

定形だけど冗長なコードを劇的に減らすことができます。
例えば、 getter/setter などを一行でコーディングできます。

型安全なコーディング

NullPointerExceptionが発生するかどうかは、従来、コーディング時にはわからず実行しないといけないものでしが。
しかし、Kotlinでは、Nullを許容するかどうかを型として指定できるため、コーディング時の絶対にNullにならないことをっ保証できます。
型のチェックをしてOKだった場合は、自動的に型変換される

JVM/Android/JavaScriptのライブラリとの100%の相互運用性

新しくKotlinを使い始めると、今までに開発したレガシーなライブラリや便利なフリーのライブラリが利用できないのではないかと心配になるかもしれません。
しかし、実はKotlinではまったく問題がありません。
KotlinはJVM/Android/JavaScriptのライブラリと100%の相互運用性があります。

開発環境が整っている

新しいプログラミング言語を利用したいと思ったときに、気になるのが満足できる開発環境があるかどうかです。
その点では、Kotlinはもともと開発環境メーカーであるJetBrainsが開発しているので、モダンな開発環境を利用できます。
JetBrainsの開発環境といえば「Python用のPyCharm」や「Android StudioのベースとなっているIntellij IDEA」などが有名ではないでしょうか?
Kotlinも無料のIntellij IDEA のCommunity Editionで開発が可能です。

4. Kotlinの情報は充実してる?

英語サイトなら充実してます。という回答になると想います。
ということで、このサイトでKotlinの入門的な情報を扱っていきたいと想います。