Androidの公式開発言語は、2017年10月現在2つあります。それが「Java」と「Kotlin」です。
Kotlinは2017年5月に公式言語となったばかりのプログラミング言語ですが、まだ新しい言語ですのでプログラマーでない方には馴染みがないのではないでしょうか。
一方で、Javaの名前は聞いたことがあるという方は多いと思います。余談ですがJavaを開発したサン・マイクロシステムズは2010年1月にオラクルに買収され、Javaはオラクルの管理下にあります。
Javaは業務システムやWebの開発で使われる、最も有名なプログラミング言語のひとつです。特徴は、Java仮想マシンで動く点です。仮想マシンとはソフトウェアで作られた架空のコンピュータです。そしてこのJava仮想マシンは様々なプラットフォーム用のものが提供されています。Windows用のJava仮想マシン、Linux用のJava仮想マシンといった具合です。
これらの仮想マシン用にJavaを翻訳することで、Javaは同じコードがどのプラットフォームでも動きます。"Write once、run anywhere" (一度書けば、どこでも実行できる)は、Javaのスローガンです。また、オブジェクト指向をサポートしているという特徴もあります。この点は、以前ご紹介したRubyと同じですね。
このように様々な種類の開発に使われているJavaですが、デメリットも多く指摘されています。それは、書き方が冗長で複雑になってしまい、実行時エラーを回避しにくいという点です。
また、iOSアプリとAndroidアプリを作る際にも問題があります。Javaは、iOSアプリ開発で主流の言語Swiftとかけ離れているのです。iOSとAndroidの両方を開発する際、エンジニアの学習コストと開発コストがかかってしまうのが難点です。
前置きが長くなりましたが、これらの問題を解決した言語が、次に紹介するKotlinなのです。
Kotlinは2011年に登場と比較的新しいプログラミング言語です。開発元のジェットブレインズ社はチェコに本社をおくソフトウェア開発企業で、主な製品はIntelliJ IDEAという統合開発環境です。Android StudioというAndroidの公式開発環境も開発しています。
Kotlinはオブジェクト指向、関数型プログラミング対応、効率と安全性の両立、柔軟で強力な言語機能とライブラリ等を備えており、モダンな言語と言われています。また、書き方がSwiftと似ていると言われています。こうした特徴からiOSとAndroidを開発する際は、SwiftとKotlinを選ぶという開発者が多いようです。
Javaよりも書きやすい言語なのと、ネット上に情報が多いという理由で、Android開発を始めるなら筆者はJavaよりもKotlinをおすすめします。
余談ですが、開発環境のAndroid Studioと開発言語のKotlinがAndroid公式となったことからGoogleがジェットブレインズ社を買収するのではないかという噂が一時期飛び交いました。しかしこの予想をジェットブレインズ社は否定しています。
開発者は、言語が企業に買収されることで方向性が変わってしまうのではないか心配したようですね。
Kotlinは新しい言語であり、バージョンアップも活発に行われています。ですから書籍よりも、公式のドキュメントやチュートリアルから学ぶのが良いと思います。
iOSの学び方でもご紹介した「RayWenderich」というサイトは、すぐに動かせる無料サンプルが多いのでおすすめします。いずれも英語ですが、ぜひ挑戦してみてください。
・公式チュートリアル:
https://kotlinlang.org/docs/tutorials/
・公式リファレンス:
http://kotlinlang.org/docs/reference/
https://try.kotlinlang.org/
・無料サンプルサイト:
https://www.raywenderlich.com/
文:鶏肋/編集:M&A Online編集部