みんなの「作ってみた」

#3 Kotlin で TODO アプリを開発・リリースするまでの記録

2019/08/13

m_n_r
m_n_r
WEBエンジニア(駆け出し)。 アトランティックサーモンがお好き。

前回のあらすじ

前回までの記事

#1 Kotlin で TODO アプリを開発・リリースするまでの記録
#2 Kotlin で TODO アプリを開発・リリースするまでの記録

前回のあらすじ

  • RecyclerView に必要なものがなんとなくわかった
  • CardView を使いたい欲がもりもり

今回の目標

  • ライブラリについて調べる
  • 引き続き実装に必要な下調べを行う

Support Library ってなに?

ライブラリが突然 Support Library に変わりましたが同じものを指しています。
前回まで登場していた「RecyclerView」や「CardView」のライブラリのことです。

Support Library の機能ガイド

要は、アプリの開発に役立つ機能を拡張可能なクラスとして提供しているようです。
使う分にはそこまで意識する必要はなさそうですね。

いや、まてよと。
記事文頭にある注意書きが、気になります。

注: Android 9.0(API レベル 28)のリリースにより、Jetpack の一部として AndroidX と呼ばれる新しいバージョンのサポート ライブラリが登場しました。AndroidX ライブラリには既存のサポート ライブラリのほか、最新の Jetpack コンポーネントも含まれています。

サポート ライブラリは引き続きご利用いただけます。過去のアーティファクト(バージョン 27 以前で android.support.* としてパッケージ化されたもの)は、Google Maven でそのまま利用可能です。ただし、新しいライブラリ開発はすべて AndroidX ライブラリで行われます。

すべての新しいプロジェクトで AndroidX ライブラリを使用することをおすすめします。また、既存のプロジェクトを AndroidX に移行することもご検討ください。

サポートライブラリ、過去の遺物じゃない?

技術の進歩は早いものですが、スマートフォンの OS ともなれば目にも止まらぬ速さのようです。
※引用した公式記事の「Jetpack」「AndroidX」リンク先が逆になっているので注意です(2019/08/13時点)

AndroidX ってなに?

AndroidXへの移行がすぐできたのでまとめ
AndroidXとは今までのSupport Libraryを代替するAndroid拡張機能ライブラリのオープンソースプロジェクトです。

AndroidX は Support Library を代替する。

AndroidX の概要
AndroidX は、同等の機能と新しいライブラリを提供することで、完全に Support Library の代わりとなります。

AndroidX は Support Library の上位互換。
ならこれを使いましょう。

Jetpack ってなに?

ところでさっきの引用をもう一度確認します。

Support Library の機能ガイド
注: Android 9.0(API レベル 28)のリリースにより、Jetpack の一部として AndroidX と呼ばれる新しいバージョンのサポート ライブラリが登場しました。

Jetpack の一部として AndroidX が登場したようですね。
最新の何かっぽいです。

Jetpack は Android 開発全域に関わる高品質コンポーネントであり、Kotlin も書きやすくしてくれているので積極的に活用していくべきであることがわかりました。
ただ、Jetpack と AndroidX の関係性の記述が一切見つけられませんでしたが・・・謎。

もうちょっと詳しく

AndroidX はさておき、Jetpack で追加されたいろんな新しい機能が気になります。

Android Architecture Components

Jetpack の中でも気になった Architecture について、簡単に掘り下げていきます。
本題から外れない程度に、簡単に触れます。

MVVC

Lifecycle

Navigation

LiveData

最後はLiveData と関係ないそうなのですが、双方向データバインディングも実装に必要となる可能性があるので、勉強になりました。

あれ、何を調べているのかわからなくなってきた・・・。

まとめ

今回はここまでです。
ライブラリを調べて、寄り道していたらおわってしまいました。
AndroidX を使用した場合のライブラリインポート方法には触れていませんが、この段階では気付いておらず、調べるだけ調べて満足しています。
後々躓くところも書くのでお楽しみに。
次回は本題へ戻りますよ。

成果

  • ライブラリの最新は AndroidX
  • Jetpack には便利な機能がたくさんあり、中でも LiveData が使えそう

参考記事に感謝

たくさんの記事を引用させて頂きました。ありがとうございます。
著者が一部のみを引用したことにより、引用元の意図しない情報として受けられることがないよう、できれば引用元の記事を読んでいただけますようお願いいたします。
またいずれの記事の感想も、著者個人の意見に基づくものですのでご注意ください。

次の記事

#4 Kotlin で TODO アプリを開発・リリースするまでの記録