まだ知らないKotlinの世界


クラウドソリューション開発部の今野です!

「AndroidアプリってJavaで作れちゃうからJavaで作ろう」

「KotlinってAndroidアプリにしか使用できなさそう」

「 あー言語学習のハードル高そうなイメージ」

非常にもったいない!

というお話を今回はさせていただきたいと思います。

Kotlin、非常に便利な言語なんです。

一度書いたら病みつき間違いなしです。

今回はAndroidアプリ開発でKotlinを使った時の魅力についてお伝えしていきます!

Google推奨言語

KotlinはJetBrains社により2011年に公開されました。

Googleは2017年にKotlinをAndroid開発推奨言語に認定しています。

Android アプリだけでなく、iOSアプリ、Webアプリケーションの開発も可能な言語です。

セミコロン不要!

コードにセミコロンは不要でございます。

地味に便利なんです。

例えば、

Java

Kotlin

セミコロンよさらば!

データクラスを作成するときに短いコードで書ける

まずはJavaのコードから。

Java

このように、equals・hashCode・toStringのオーバーライドが必要になります。

続いてKotlinです。

この一文だけでgetter・equals・hashCode・toString が自動生成できちゃいます。

Null時も安心

Kotlin は型システムに「Nullable 型」と「Non-null 型」を組み込み、コンパイル時にヌル参照を防止することができます。

Java

Kotlin

このようにnull時のリスクを減らすことができます。

Swiftに書き方が似ている

拡張機能実装時のSwiftとも比較をしてみましょう。

Swift

Kotlin

型定義と拡張機能を紹介しましたが、

Swift も Kotlin も、変数宣言時に型をほとんど明示する必要がなく、右辺から型を推論します。

既存クラスにメソッドを「追加」できる仕組みも共通です。

iOSアプリ開発も可能!

先ほどの文を見て、勘の鋭い方は気づくかもしれません。

Androidアプリの開発言語なのに、iPhoneアプリも作れるの…?

作れるんです。

JetBrains社がリリースしているKotlin Multiplatformを使って作ることができます。

https://www.jetbrains.com/ja-jp/kotlin-multiplatform/

ただ、実質はSwift側で処理を行っていて、Kotlinのコードをブリッジする必要があるため、クロスプラットフォームのようなコード管理が必要になります。

Kotlinのみ扱う場合は便利かもしれないですが、

SwiftとKotlinそれぞれ書けるのならば、そちらで管理した方が後々の保守性が高そうに思います。

まとめ

いかがでしたでしょうか?

まだまだ知らないKotlinの世界、もっとあると思います。

Javaに比べてKotlinを扱う人は少ないと思いますが、一度書いたらJavaに戻れない言語と言われるほど快適な言語です。

ぜひ試しに書いてみてください!

 

弊社ではIoTに関連した、様々な案件にチャレンジすることができます。

ぜひ一緒にこれからの未来を作っていきませんか?

最後までご覧いただき、ありがとうございました!