Studyplus Engineering Blog

スタディプラスの開発者が発信するブログ

DroidKaigi 2023に参加しました

こんにちは!クライアントグループの後藤です。 この度、9/14(木)~16(土)にベルサール渋谷にて開催されたDroidKaigi 2023に参加しましたので、その様子をお伝えします。

はじめに

弊社スタディプラス株式会社は、サポータースポンサーとしてDroidKaigi 2023に協賛させていただきました。今年は弊社から2名がスポンサーチケットを利用して参加しています。

また、今年の6月まで弊社にモバイルアプリエンジニアとして在籍していた中島さんが、Flutterのアプリ内課金実装についてのセッションで登壇しました。視聴していただいた皆さん、ありがとうございました!
Flutterにおけるアプリ内課金実装 -Android/iOS 完全なる統一- | DroidKaigi 2023

感想

今回参加した2名は、今年の4月に入社したばかりの新人でAndroidアプリ開発の経験がほとんどない後藤と、現在StudyplusのAndroidアプリの開発を担当している隅山です。 以下では、それぞれの視点から感想を述べていきます。

後藤

Day1~2の日程で参加しました! 参加前はAndroidアプリ開発についての知識がほとんどない状態だったため、楽しめるかどうか不安ではありました。 しかしいざ乗り込んでみると、セッションによってはあまり知識の必要ないものや、他のOS開発に通じる部分も見られ、意外にも楽しめました。 また、スポンサーブースでは各社の開発体制やマルチプラットフォーム対応を中心に話を聞き、サービスの規模やフェーズによって取り組みや技術選定も様々でとても興味深かったです。

今回初めて参加したDroidKaigiですが、いい刺激をもらうことができました。来年はもっと知識をつけた上で参加して、もっと深くまで楽しみたいと思いました!

以下では個人的に印象に残ったセッションを紹介します。

よく見るあのUIをJetpack Composeで実装する方法〇選

2023.droidkaigi.jp

アプリでよく使われているUIコンポーネントをJetpack Composeではどう実装するかを紹介したセッションでした。 Flutter開発を行っていることもあって、同じ宣言的UIであるJetpack Composeに興味があったため視聴しました。 一般的なアプリを作るのに十分な内容が網羅されており、Jetpack Composeを使ってUIを作る時に辞書的な形でぜひ参照したいと思いました。 また、クレジットカード番号の入力欄といった特殊なTextFieldの実装方法も紹介されており、勉強になりました。

突撃!隣のコードレビュー

2023.droidkaigi.jp

DMMさんの3つのアプリチームのレビュー体制と工夫点、レビューの際に個人的に意識している点などをまとめたセッションでした。 自身はコードレビューの経験が浅いので、経験年数のあるエンジニアの方々がレビュー時に意識していることなどはとても勉強になりました。 また、30分のレビュー時間を1日に2回設けたり、レビューのリマインドをしたりなど、チームで行っている工夫や取り組みも興味深かったです。 ぜひともチームに共有したいと思えるような充実した内容でした!

できる!アクセシビリティ向上

2023.droidkaigi.jp

アクセシビリティの概要と、日経さんの日経電子版アプリでアクセシビリティ対応したときの話をまとめたセッションでした。 概要パートでは、身体の状況だけでなく周囲の環境や言語など様々な状況においてアクセシビリティの必要性があることを知ることができました。 また、日経電子版アプリでの取り組みでは、施策立案から優先順位決めをして、開発、リリースするまでの流れが紹介されていました。 実装の前段階で、他の開発タスクと並行して作業可能なものかどうかや他の操作で代替できないかなどの観点から優先順位を決めをしていたところなど、アクセシビリティ対応の実例として学ぶところが多かったです。

隅山

DroidKaigi 2020から積極的に参加していましたが、今回が初めてのオフライン参加となりました。 今までのオンライン参加とは違い、知り合いエンジニアと直接話が出来て非常に勉強になりました。 余談ですが会場近くのスターバックス リザーブ ロースタリーに行って飲んだコーヒーが美味しかったです。

最近Flutterしか触ってないので、Flutter開発にも活かせそうなセッションに参加するようにしました。 以下に印象に残ったセッションを紹介します。

Unleashing the Power of Android Studio

2023.droidkaigi.jp

生産性を向上させるAndroid Studioの最新機能を紹介するセッションでした。 Flutterのホットリロードのような機能であるLive Edit、ビルド時間が計測できるBuildAnalyzer、build.gradleがKotlinで書ける機能などが紹介されていました。 その中でも特に驚いたのがAndroid Studio上で実機をミラーリングできる機能とFirebase Crashlyticsの問題分析できるApp Quality Insightsでした。

実機のミラーリングではスクショや動画も撮ることができるし、Android Studioからデバイスを操作することもできるので他の方への共有などが非常に便利になるなと感じました。 App Quality InsightsはIguanaからですが、クラッシュが起きていた当時のコードを確認することができるので現在修正されているかどうかも確認することができそうでした。

(Unofficial) Guide to App Architecture Guide Vol. 2

2023.droidkaigi.jp

このセッションではアプリアーキテクチャの観点から依存性注入とマルチモジュールの話をしていました。 依存性注入は様々なライブラリ紹介もしながら、有向非巡回グラフ(Directed Acyclic Graphs: DAG)を考慮することが重要と説明していました。 また、マルチモジュールではカプセル化ができるかがいかに大事で、そのメリットやアンチパターンの紹介もされていました。

弊社のアプリはマルチモジュールを対応しているので、循環参照を回避することやInterfaceの利用場面などマルチモジュールの方針が言語化されたセッションで参考になりました。 英語のスライドでの発表だったため、改めてセッションを見返してより深く理解すべき内容だなと思いました。

おわりに

DroidKaigi 2023はとても充実した内容で、とても勉強になりました!来年もぜひ参加したいと思います! 運営の皆さんをはじめ、登壇された皆さんや参加された皆さん、ありがとうございました!