「Bonfire Android #5」に参加しました

ヤフー株式会社(LODGE)で開催された「Bonfire Android #5」に参加してきました!

yj-meetup.connpass.com


今回のテーマは「Jetpackとサービス」で、以下5件の発表がありました。
個人的にどうしても聞いておきたいテーマだったので、「ブログで感想枠」で申し込みました(会場に着くまでそのことは忘れていましたがw)。
本記事はそのレポートを兼ねています。


Navigationを見据えたリファクタリング ~マルチモジュール化を添えて~

ヤフー株式会社の@fei_komeさんによる発表です。
Yahoo!ファイナンス」アプリにNavigationを導入しようとしましたが、歴史が長く"アレ"な状況だったので、将来的に導入するための前準備としてリファクタリングを行った話でした。

マルチモジュール化、また、依存性逆転の原則を利用してAppモジュールにあるFragmentをNavigationインタフェース経由でPresenterモジュールから呼び出すようにしたとのことです。
直接Jetpackの話ではありませんでしたが、既存のアプリのアーキテクチャを変更するときの1つの参考になりそうだと思いました。

スライドは以下になります。


マネーフォワードMEにおけるJetpackの活用事例

株式会社マネーフォワードの@syarihuさんによる発表です。
「マネーフォワードME」アプリの新規画面にJetpackを導入した話でした。

ViewModelLiveDataLifecycleを導入したそうですが、ただ導入するだけでなくコードベースでの解説やペアプロという形でチームに浸透させるための取り組みを行っている点もよいと思いました。

余談ですが、MEは「Money Experience」の略だそうです(気になって調べました笑)。

スライドは以下になります。


Paging Library ~アイテムの更新~

合同会社DMM.com@kgmyshinさんによる発表です。
Pagingを利用するときのツラミとその回避策の話でした。挙手による調査ではPagingを利用している参加者は2名のようでした。笑

リスト内のアイテム更新をRoomを利用して行う方法と利用せずに行う2種類の方法が紹介されていましたが、個人的には後者の方がしっくりきました(単にRoomを使ったことがないからかもしれませんが)。

スライドは以下になります。また、サンプルコードはこちらになります。


Room(へや)とコルーチンと私

グーグル合同会社@yuichi_arakiさんによる発表です。
主にRoom 2.2.0-alpha02に導入されたCoroutines Flowを中心とした話でした。…が、正直全く理解できませんでした。勉強不足です。

そろそろCoroutinesに触れておかないと本気で時代に取り残されるなと感じました。

スライドは以下になります。

docs.google.com


JetpackのNavigationと関連UIコンポーネント導入振り返り

ヤフー株式会社の@k_mikuさんによる発表です。
Yahoo!ニュース」アプリにNavigationを今度は実際に導入したときの話でした。

Jetpack全てがそうであるとは限りませんが、便利ツールはカスタマイズしたいときにツラミを感じるという割とよく直面する話で共感度が高かったです。
あと、「大きな改修時にはなるべく1つ新しい技術に挑戦する」という方針は素晴らしいと思いました。

スライドは以下になります。

www.slideshare.net



以上です。

「Bonfire Android」は今回が初めての参加でしたが、発表内容のレベルがどれも高く、これらを理解してさらにスキルアップしていきたいという気持ちが強くなり、個人的にはモチベーションが上がりました。
次回以降もまた参加したいと思います。