
kotlinを学びましょう。
kotlin(コトリンと読みます)は、2011年に登場した比較的新しい開発言語で、
Androidアプリを作ることができます。
長い間AndroidアプリはJavaで開発をしていましたが、kotlinがAndroidの開発言語に採用され、
一気にその地位を確立しました。
モバイルアプリ開発を始めるならKotlin!Kotlinから始めてみましょう。
本稿では、Kotlinの特徴にふれつつ、アプリ作成のファーストステップを紹介します。
kotlinとは?

Kotlinは、チェコのプラハに本社をおくジェットブレインズ社によって生み出されました。
ジェットブレインズ社は、JavaのIDE(統合開発環境といいアプリケーションを作るためのソフトウェア)であるIntelliJ IDEAなど、各言語のIDEを多く開発している企業です。
Javaの良いところ悪いところを知り尽くしている企業だからこそ、その欠点を補うべく生れたのがKotlinと言えるでしょう。
Kotlinは大人気

StackOverflowというサイトを知っていますか?
StackOverflowは、世界中のプログラマーが利用するプログラマー向けのQ&Aサービスです。
自分が困っていることは世界中の誰かが同じような問題で困っていることが多く、ここを検索すれば大抵の問題は解決できます。
そのStackOverflowの2019年の好きな開発言語ランキングで、kotlinは4位であり、kotlinの人気の高さがわかります。
Android開発のスタンダード言語

2019年現在、AndroidアプリはKotlinとJavaで作成することができます(ゲームアプリなどC++が使用される場合もあります)。
Google社では2019年5月にkotlinをAndroid開発の推奨言語に格上げし、今後AndroidJetpack(ライブラリ群)もkotlinから提供すると発表しています。
また、AndroidDevloperブログの記事では、Android開発者の50%以上がkotlinを使っているとのことです。
このことから、今後もAndroidアプリ開発でkotlinが採用されるケースが標準となり、Javaからのおきかえが進むと予想されます。
ですから、これからAndroidアプリ開発に挑戦しようとしている方は、kotlinファーストで考えて良いと思います。
Javaとの互換性

kotlinはJavaと100%の互換性があります。
Javaは1990年代に生まれた割りと古い言語ですが、出た当初は画期的言語として一時代を築きました。
そのため、Javaプログラマーはとても多く、ライブラリもたくさん開発されてきました。
kotlinはJavaと100%の互換性があるため、この豊富なライブラリ群を利用できるものkotlinの強みと言えるでしょう。
kotlinの良いところ

- コードが簡潔
- Nullセーフ
2つだけ!?と思うかもしれませんが、そうではありません。
先にふれたJavaのライブラリが使えることもそうですし、それ以外にもたくさんの良いところがあります。
ここでは、特にkotlinの特徴といえる2つについてフォーカスしたいと思います。
コードが簡潔
以下のコードは”Hello World”と表示するだけのものです。
- Java
1 2 3 4 5 |
public class Main { public static void main(String[] args) { System.out.println("Hello World"); } } |
- Kotlin
1 2 3 |
fun main() { println("Hello World") } |
同じことをするのでも、圧倒的にkotlinがシンプルなのがわかると思います。
コードが簡潔に書けるということは、バグが混入しにくく、テストがしやすいということです。
Nullセーフ
多くのJavaプログラマーを悩ませる種の一つにNullPointerExceptionがあります。(ヌルポと呼ばれるやつです)
Nullは、何もデータを保持していない状態を表します。その保持していないものに対しデータを参照しようとするとNullPointerExceptionが発生します。
下のJavaのコードを見てみましょう。
1 2 |
String str = null; System.out.println(str.length()); |
極端な例ですが、Nullのデータに対し、文字列の長さを参照しているため、NullPointerExceptionが発生しアプリが落ちます。
そのため、プログラマーはそのデータがNullなのかそうでないのかを常に気を配る必要があります。
複数人で開発しているときは、渡されるデータがNullが含まれるかどうかを決めておく必要があり、Nullが渡されたときにどう振る舞うべきかも検討しておく必要があります。これを決めておかないとNullPointerExceptionでアプリが落ち、どちらが悪いなど責任問題になりかねません。
このようにJavaでのNullを巡る問題は非常に面倒くさく、数多くのバグを生み出してきました。
Kotlinでは、シンプルにNullを許容しない型と許容する型をはっきりと定義できるようになりました。
1 |
val str:String = null |
kotlinは変数を定義した場合、全てNullを許容しません。
上のコードは、Nullを許容しない型にNullを代入しようとしているため、コンパイルのときにエラーとなり、事前にミスに気付くことができます。
どうしてもNullを扱いたい場合は、変数の型のところに”?”をつけます。
1 |
val str:String? = null |
このNullを許容している変数を参照しようとするとこちらもコンパイルエラーとなります。
このように、Kotlinではシンプルな方法でNullPointerExceptionの撲滅に成功しています。
ヌルポに悩まなくてよくなったプログラマーは、ロジックの開発に専念できるようになりました。
Androidアプリを作ってみよう

スマートフォンのOSはAndroidとiOSがありますが、一からアプリ開発を始めるにはAndroidの方が向いていると思います。
というのも、iOSアプリの作成はほぼMacが必須であることに加え、実際の端末で動作確認するまでのステップがAndroidの方が簡単だからです。
Androidであれば、開発用のOSは選ばすWindows、Mac、Linuxで開発することができます。
まずは、KotlinでAndroidアプリの開発に慣れつつ、興味があればiOSにも手を伸ばしていく形でよいのではないでしょうか。
iOSアプリの開発言語であるSwiftはKotlinと似ている部分が多くあり、Kotlinに慣れてしまえば、Swiftも怖くありません。
この章では、Androidの開発環境であるAndroidStudioのインストールから、”Hello World”を表示する簡単なアプリ作成までのステップを説明します。
以下の環境で動作確認を行いました。
- OS:Windows10 Home 64bit
- AndroidStudio:3.5.1
AndroidStudioのインストールから起動まで
まずは、以下のリンクからAndroidStudioをダウンロードします。
https://developer.android.com/studio/?hl=ja
「DOWNLOAD ANDROID STUDIO」をクリックします。

「Next」を押していき、インストールします。
デフォルトの設定内容で問題ありません。

AndroidStudioを起動します。
初回起動時は以下の画面が表示されますが、そのまま「OK」を押します。

下の画面が表示されたら「Next」を押します。

“Standard”のまま、「Next」をクリック。

好きなテーマを選んで、「Next」をクリック。

「Finish」をクリック。

AndroidSDKなどのダウンロードが始まるのでしばらく待ちましょう。
もう一度、「Finish」をクリック。

プロジェクトの作成
“Start a new Android Studio project”をクリックします。

そのまま、「Next」をクリック。

「Finish」をクリック。「Name」の項目はわかりやすいように変更しても問題ありません。

プロジェクトの初期設定で時間がかかるので、しばらく待ちます。
アプリを動かす
実際のAndroidデバイスを使って、アプリを動かしてみましょう。
Androidデバイスの準備
Androidデバイスで、「設定」→「システム」→「電話情報」を開きます。
一番下に「ビルド」番号があるので、ここを連続でタップします。
“これでデベロッパーになりました!”のメッセージが出れば成功です。
「設定」→「システム」に「開発者向けオプション」の項目が出ているので、タップします。
「デバッグ」の箇所に「USBデバッグ」の設定項目があるので、ONにします。
AndroidデバイスとPCをケーブルで接続します。
これで、アプリをAndroidデバイスで動かす準備が整いました。
動かす!
AndroidStudioで画面の上の方に、接続したAndroidデバイスの名前が出ていると思います。

この状態で、Runボタン(緑の再生ボタン)をクリックします。

アプリが実行されました!
ここまで、うまく実行できたでしょうか?
まずはここをファーストステップとして、このアプリを改造しながら、Kotlinを学んでいきましょう!
まとめ

自分で作ったアプリが実際の端末で動くのはとても感動するものです。
スマートフォンを使っていると、こういうアプリがあったらいいな?と思うことはありませんか?
マーケットで探してインストールしてもいいのですが、微妙に思うところと違ったり、広告が煩わしかったりということが多々あります。
そういうときは、自分で作ってしまえばよいのです。
まずは、こういったアプリを作りたいと目標を決めて、挑戦してみましょう。
一つずつできることを増やして、目標のアプリが完成するころには、Kotlinについても理解が深まっていることと思います。
今から、Androidアプリ開発に挑戦しようとしている人の参考になれば嬉しい限りです。