DroidKaigi 2023に行ってきた
目次
昨日と今日の2日間、DroidKaigi 2023に行ってきました(明日の3日目も開催されますが、自分は不参加です)。数年振りのオフライン参加で、いろいろな人と会って話せたので楽しかったです。忘れないうちにセッションの感想を残しておきます。
Android Open-source repositories 101: Everything you always wanted to know
OSSの管理方法について扱ったセッションでした。自動化が大事だという話をされてましたが、自動化のスキルは実務に役立つことも多そうです。OSS活動、なかなかできてないですが、やりたい気持ちだけはもう何年もあります。
Android Open-source repositories 101: Everything you always wanted to know | DroidKaigi 2023
Supercharging Android Testing: Scalable Environments for Large Teams on Diverse Devices & Features
AndroidはOSバージョン、スクリーンサイズ、メーカーをたくさんサポートしなくてはならない、というようなことを言っていた記憶があります。事業成長のためにはテストがスケールしないといけないと言っていた点については耳が痛いのと同時に頑張っていこうと思えました。長期のコミットメントとイテレーティブなマインドセットが必要である、とも言っていたので心の支えにします。
あとはテスト結果のトレンドをモニタリングできるダッシュボードを整備して、アラートを出すようにすると良い、とのこと。確かにダッシュボードがあれば良さそうですが、準備が大変そうだとも思いました。
(Unofficial) Guide to App Architecture Guide Vol. 2
Hiltについての話が多かったです。HiltはComponent Treeから外れたことをしようとすると難しいという話をしていて、例えば @AccountScope
みたいなやつを定義できればマルチアカウントが楽になるけどできないという話をしていました。Daggerの拡張であるsquare/anvilや、さらにその拡張であるdeliveryhero/whetstoneの話もありました。
マルチモジュールまわりの話は耳が痛かったです(すみません)。
(Unofficial) Guide to App Architecture Guide Vol. 2 | DroidKaigi 2023
モニタリングでパフォーマンス改善入門
立ち見になってしまってメモが取れませんでした。最初の10分と最後の5分は見れましたが、あとの時間はブースを回ってました。アーカイブでまた視聴します。
モニタリングでパフォーマンス改善入門 | DroidKaigi 2023
Maintaining E2E Test Automation as We Transition from View to Compose
E2EテストをAndroid ViewからComposeに移行した時の話でした。リリースサイクルを2週間から1週間にした、というような話をされており、それを支えるのがE2Eテストとのこと。リリースサイクルを早めることに興味があったので、E2Eテストも重要だなという感想を持ちました。
Maintaining E2E Test Automation as We Transition from View to Compose | DroidKaigi 2023
MVIに基づくStateMachineアーキテクチャ:KMMとJetpack ComposeとSwiftUIを組み合わせる
Processor、Reducerを用いてMVIアーキテクチャを構築する話。UMLからKotlinのDSLを作る話は面白かったです。自分では取ることのないアプローチだと思ったので、関心しました。
また、オフィスアワーで質問をさせてもらい、ProcessorでのIntentのprocessとReducerでのActionのreduceが組合せ爆発しそうだけど、その組み合わせのテストどうするのって聞きました。スライドの最後の方にあったロードマップに入っているということと、重要なところだけテストを書いているとのことでした。
MVIに基づくStateMachineアーキテクチャ:KMMとJetpack ComposeとSwiftUIを組み合わせる | DroidKaigi 2023
Androidの『音』を制御する
Androidのサウンド制御の話。端末差異がすごいなあと思ったのと、各端末の挙動についてよく調べたなあと感動しました。
Androidの『音』を制御する | DroidKaigi 2023
Androidアプリの良いユニットテストを考える
DeNAのSWETのNozomi Takumaさんの発表。去年もCoroutinesのテストの話をされていましたね。去年の発表も今年の発表もとても勉強になりました。
内容としては単体テストの保守性の話。参考文献として「単体テストの考え方 / 使い方」「xUnit Test Patterns」を挙げられていました。前者は自分も読みましたが、後者はかなり読み応えのある本(英語だし、900ページくらいある)なので自分は斜めにしか読んでおらず、通読したのかな、すごいな、と思いました。
Takumaさんのインタビュー(Androidアプリ開発者の福利厚生?スペシャリストの挑戦)も読みましたが(DroidKaigiへの登壇は5年連続だったんですね)、Androidのテストにキャリアを振って専門性を深められているのもすごいなと思っていて、ちょっと自分のキャリアについても考えてしまいました。ファンです。本とか書いて欲しいです。
Androidアプリの良いユニットテストを考える | DroidKaigi 2023
Jetpack Compose で Android/iOSアプリを作る
元同僚のm.coderさんの発表でした。内容はComposeを用いてAndroidアプリとiOSアプリを作るというもの。自分がこのアプローチを取ることはない(少なくとも仕事では)と思いますが、実験としては面白いです。KMP周りのエコシステムも頑張っているなと思いましたが、まだまだ大変そうです。Windows Phoneもあったらもっと大変だったと思います。
Jetpack Compose で Android/iOSアプリを作る | DroidKaigi 2023
中規模アプリにおけるレイヤードアーキテクチャでの例外との向き合い方
アプリ全体で例外をどう体系的にハンドリングするかという話でした。例外のハンドリング設計をアーキテクチャとしてできているといいよねということで、自分もそう思います。例外のハンドリングが場当たり的だと、かなりカオスなコードベースになってしまうと思うので。示されていたサンプルコードは目指す目標としては綺麗だなと思いました。
中規模アプリにおけるレイヤードアーキテクチャでの例外との向き合い方 | DroidKaigi 2023
Our ongoing journey from REST to GraphQL on Android
GraphQLの話。2020年にGraph QLが導入されて、今も ongoing とのこと…。何かを思い出して遠い目になってしまいました(多くは語らず)。
Our ongoing journey from REST to GraphQL on Android | DroidKaigi 2023
まとめ
数年振りにオフラインでDroidKaigiに参加しました。久し振りに会う方やオフラインで会うのが初めてという方も多くて、楽しかったです。セッションについてはアーキテクチャやテストの話を中心に聞いて、なんというか「頑張ろう」と思いました。
関係者の皆さま、おつかれさまでした&ありがとうございました。
書いている人 😎

茨城県つくば市在住のモバイルアプリケーションアーキテクト(Androidが得意です)。モバイルアプリのアーキテクチャ、自動テスト、CI/CDに興味があります。いわゆる「レガシーコード」のリファクタリング・リアーキテクチャが好きです。
👉 もっと詳しく
著書 ✍
Android 依存性注入 ヒッチハイク・ガイド🧳
Androidアプリでの依存性注入(Dependency Injection)に入門するためのガイダンスです。依存性注入の概念やメリットを理解し、Dagger Hiltを用いてAndroidアプリに適用する方法を解説しています。
ソフトウェアデザイン 2023年6月号📚
特集「クリーンアーキテクチャとは何か?」の第5章「モバイルアプリ開発における実践」を執筆しました。
Android クリーンアーキテクチャ ヒッチハイク・ガイド🧳
Androidアプリでのクリーンアーキテクチャに入門するためのガイダンスです。クリーンアーキテクチャの概念を理解し、Androidアプリに適用する方法を解説しています。
Android ユニットテスト ヒッチハイク・ガイド🧳
Androidアプリのユニットテストに入門するためのガイダンスです。初学者が混乱せずにAndroidアプリのユニットテストを書き始めることができる、ということを目的としています。
Android MVVMアーキテクチャ入門🛠
Androidアプリ開発の初学者に向けた、MVVM(Model-View-ViewModel)アーキテクチャの入門書を書きました。初学者の方を確実にネクストレベルに引き上げる技術書です。NextPublishingより出版されています。
関連記事 👀
- Mistel Barocco MD770RGBを買いました
- 働くをもっと楽しくするために、Chatwork株式会社にジョインしました🚀
- フラー株式会社を退職しました
- コードレビューにおける「パッと見でわからないので」
- Androidアプリ開発入門2020