支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


はじめに

2017年よりandroidの公式開発言語となった「Kotlin」というプログラミング言語についてご存じでしょうか。これまではandroidアプリの開発といえばJavaが唯一の選択肢でしたが、Android Studio(ver.3.0)というandroid公式開発環境のリリースとともにKotlinのサポートが開始されました。Kotlinは比較的新しい言語ですが、androidが普及するのに比例して開発者数が急上昇している言語のひとつです。
この記事はKotlinについて調査している方、もしくはandroidアプリの開発に興味のある方を対象に、概要を知ってもらうための入門編という位置づけで執筆いたしました。

Kotlinとは

Kotlinとは、JetBrains社が開発したオブジェクト指向プログラミング言語で、主にandroidアプリの開発に使用されています。理由は単純で、androidアプリをターゲットに開発された言語だからです。Javaと同じくJava仮想マシン上で動きますが、Javaよりもさらに簡単にプログラミングを行えます。余談ですが、名前の由来はロシア連邦に所属するコトリン島にちなんで命名されました。

なぜJavaではなくKotlinなのか

androidアプリ自体はJavaでも開発できますが、先述した通り、Kotlinはandroidアプリの開発に非常に適しており、「実用主義、簡潔、安全」に沿った言語です。Javaと比較して、ソースコードがよりシンプルになり、そしてJavaで陥りやすいミスを未然に防ぐことが可能です。また、Javaと100%の互換性があるので、JavaのプログラムをKotlinで利用することができます。Javaの経験がある入門者にとっては学習コストが少なくなるのも魅力的ですね。

Kotlinの特徴

さて、それではKotlinの主な特徴を紹介します。

相互運用性

Javaとの相互運用性により、Javaのライブラリをそのまま利用することができます。またJavaのプログラムをKotlinで利用できるように、Kotlinで作成したプログラムをJavaで利用することもできます。つまり、JavaとKotlinのソースファイルを自由に行き来できることを意味します。

オブジェクト指向

KotlinはJavaと同じくオブジェクト指向言語のため、当然クラスを作成できます。ここでもJavaとの共通点がありましたね。何度も言いますが、Javaとの100%の互換性があるので共通している点はこの他にまだまだたくさんあります。しかし、Javaで抱えていた問題を解決するために改善された点も多く存在することも覚えておきましょう。

静的型付け言語

静的型付けとは、プログラマーがあらかじめ変数や関数などに型を定義することをいいます。KotlinはJavaと同じく静的型付け言語であるため、型推論という機能によってコンパイラが文脈から判断し適切な型を定義してくれます。

基本型

Javaではintやdoubleなどいったプリミティブ型と呼ばれる型と、そのオブジェクト型であるIntegerやDoubleなどのように2種類の型がありました。ですが、Kotlinでは全ての型をオブジェクトとして扱います。

より簡潔になったプログラミング

一例として、Javaでは文字列を出力するのに、

System.out.print(“こんにちは”);

とコードを書いていましたが、Kotlinでは、

print(“こんにちは”)

と、「System.out.」の部分を書かなくて済みます。また、Javaではコードの文末にセミコロンが必要でしたが、Kotlinでは省略できるようになっている点にも注目してください。その他には、静的型付け言語の説明に出てきた型推論も簡潔さに一役買っています。

安全性

KotlinはJavaよりも安全に設計されているのが特徴です。宣言時に型が指定されたり、型推論によって型が確定した変数などにはnullを代入することができないようにnullチェックをより厳しくしています。またJavaでは型チェックをせずキャストできた代わりに、場合によってはClassCastExeptionが発生する可能性がありましたが、Kotlinでは型チェックを行ってからその型のメンバーを使用できる仕組みになっています。その仕組みにより、エラーを未然に防ぐことが可能です。

おわりに

スマートフォンの普及とともに、大きく成長を遂げたandroid市場。今や企業だけでなく個人でもアプリ開発ができる時代になりました。中には個人で大ヒットアプリを作成し、開発者として成功した方もいます。Kotlinの学習はその第一歩です。Java経験者にとっては比較的学習しやすいといっても、全てが簡単に理解できるとは限りません。学習していく中で躓くこともあるでしょう。そんな時は基本に立ち返ってみてください。そしてぜひ、Kotlinを使って大ヒットアプリを開発してみてください。



参考:はじめてのAndroidプログラミング 第4版 金田浩明 著