Android Kotlinで楽しく楽々開発①
こんばんは〜
飲み会の予約を取りに行ったついでに、月曜日からそのお店で
ビール一杯飲んで、焼き鳥を食してしまった堀田です。
弊社では少人数のためサーバサイドのWebアプリケーションからスマホ開発、サーバ構築などいろいろやらないといけません。
Android開発においては、Javaを採用するのは当たり前ですが、案件的に特に問題がなければ、
1年前のBetaの頃からKotlinという言語を採用しています。
Kotlinは開発環境のIntelliJ、Android Studio、PHPStormなどを開発しているJetBrains社が開発したプログラミング言語です。
JavaでAndroid開発する場合、通常ではLambda式が使えないのでRetrolambdaを導入したりしていました。
ちなみにAndroid N以降であれば Lambda式が使用できるそうです。
Kotlinを採用すると、Lambda式はもちろん、Closure、Extensions、Delegate、Nullable等のモダンな機能が使用できます。
Scala同様型推論があり、必要のないところでは変数の型宣言が不要です。
また、Runtimeも小さいので、Android開発において最適な言語ではないかと思っています。
Kotlinについては、情報がたくさんあると思いますので、ぐぐってください。
今回はExtensionsを取り上げたいと思います。
Ruby、Scala、Javascript、Swift等は既存クラスにメソッドを生やすことが可能です。
Kotlinで既存クラスにメソッドを生やそうと思う場合、Extensionsを使用します。
今回は、アルバム(CD)を管理するアプリを例に書きたいと思います。
Androidでは、よく固定の情報をres/array.xmlなどのリソースファイルなどで
定義したりします。
しますよね?
ResoucesからTypedArrayを使用してぐるぐるfor文でリソース情報を扱うのもいいですが、
KotlinのCollection機能を使用してクールな感じ?で扱いたいと思います。
それでは、TypedArrayにメソッドを生やしてみます。
それでは上記のExtensionsを使用して、リソース情報を管理するクラスを作成してみたいと思います。
以下は、AlbumsServiceを使用したRecyclerViewのサンプルです。
みたいな感じです。
Scala同様、Kotlinも勉強していきたいと思っています。
眠くなってきたので、今日はここまで。
それでは、また〜