FlutterKaigi2024 参加レポート

こんにちは!
2024 年新卒入社、アプリ開発支援部の涌井と小林です。
先日、FlutterKaigi 2024 に参加してきましたので、その内容をレポートします。

※この記事は、アドベントカレンダー12月4日分の記事です。 qiita.com

目次

FlutterKaigi の概要

FlutterKaigi とは?

Flutter をメインに扱う技術カンファレンスです。
今年で4回目(オフラインは2回目)の イベントとなったそうです。

公式サイト:FlutterKaigi 2024

会場
有明セントラルタワー ホール&カンファレンス

開催日時
11 月 21 日、22 日

会場の様子

参加した経緯

モバイルアプリ開発者としての知識を増やしたり、業務上でのモバイルアプリ開発に活かすことを目的として、FlutterKaigi に参加いたしました。

セッション

涌井・小林それぞれが印象に残ったセッションを感想とともに紹介します。
なお、セッションそれぞれの概要については、FlutterKaigi 2024よりご確認いただけます。

ネットスーパーがスクリーンリーダーに対応した話 〜あるいはアクセシビリティ向上によるユーザー獲得〜

概要

以下は、セッションを聞いて涌井が作成した概要です。

ネットスーパーアプリのシステムリプレイス後、「アプリが使えない」とのお問い合わせが増加したそうです。その原因は、システムリプレイス前は視覚障害者が今までスクリーンリーダーを使って買い物していたのに、システムリプレイス後は使えなくなったことでした。
そこで、スクリーンリーダーに対応したので、それに関するセッションです。 結果として、ユーザー獲得につながったのと同時にアクセシビリティが向上し、すべての人にとって使いやすいアプリケーションとなったそうです。

スクリーンリーダーとは?

スクリーンリーダー(英語: screen reader)とは、コンピュータの画面読み上げソフトウェアである。
視覚障害者がパーソナルコンピュータを操作するために、視覚的に使うことが必要であるマウスに代わり、情報を音声で読み上げることによって、操作を補助するアクセシビリティである。
スクリーンリーダー - Wikipediaより引用

資料

学び・感想

私は Flutter についてあまり詳しくありません。
しかし、Flutter についてよく知らない人でも、楽しめて、学びになるセッションだったと思います。
スクリーンリーダーは、iOS では VoiceOver、Android では TalkBack など、スマホに搭載されているということも、あまり詳しく知りませんでした。
これを気に、アクセシビリティについても学びたいと思いました。
また、私が配属されている弊社のプロジェクトやアプリなどでは、スクリーンリーダーはどうなっているのか知りたくなりました。

セッションの内容としては、具体的な Flutter のウィジェットなど、わからないことも多かったですが、全体通してとても勉強になりました。 Flutter だけではなく、Kotlin や Swift などの現状も調べ、実際に自分でスクリーンリーダーに対応した簡易的なアプリを作成したりして、勉強していきたいと思いました。

Effective Form ~ Flutter による複雑なフォーム開発の実践 ~

概要

以下は、セッションを聞いて涌井が作成した概要です。

経費精算のアプリをFlutter でリプレイスしましたが、まだまだ複雑なフォーム開発は難しいそうです。
このセッションでは、一般的なフォーム生成の流れやそれぞれの過程やその実装においての課題、解決方法について紹介しています。 Sigle Source Of Truth の担保や、宣言的な状態管理の徹底、関心範囲の局所化などにより大きな課題は解決できたそうです。
しかし、結論としては、紹介したのはごく一部であり、まだまだフォーム開発は複雑であるとのことです。

資料

学び・感想

フォームについては、Flutter 以外でのアプリなどで実装した経験があったため、Flutter の知識がなくても、セッション内容を理解することはできました。
ただ、実際に、大規模になったり機能が複雑になってくると、単純に見えるようなフォームでも、バリデーションなども多くなり、難しいのだなと思いました。
実践を通して、様々な対策を知ることができたので、今後フォームなど行う機会があれば、これらを勉強していって、効率の良い開発を行っていきたいと思いました。
また、フォーム開発は Web アプリでは過去に経験したことがあったものの、モバイルアプリ開発では、Kotlin で投稿画面を作ったり、Swift で検索画面を作ったりと、直接「フォーム」のようなものを本格的に作ったことはありませんでした。
そのため、自ら学んで、Flutter をはじめとするモバイルアプリ開発でのフォーム開発について勉強していきたいと思いました。

Flutter と難読化

概要

以下は、セッションを聞いて涌井が作成した概要です。

このセッションのゴールは、以下の 3 つです。

  • 難読化の仕組みと目的を理解する
  • 難読化に関して実践的なトラブルシューティングができるようになる
  • Flutter での難読化の動作原理や限界を理解する

    (資料より引用)

難読化とは?何か、難読化の仕組みやプラットフォームで動作する仕組みをセッションで解説されました。
Flutter の「難読化」に焦点を当て、その仕組みについて理解でき、トラブルシューティングなどの実践についても紹介されるセッションです。

資料

学び・感想

難読化という言葉を初めて聞いたので、勉強になりました。
難読化?なんでわかりづらくしちゃうのだろう?というふうに思って、セッションを聞いて、人間が理解しにくくすることだとわかり、難読化について理解を深めることができました。
Flutter の場合での難読化を知ることができましたが、Swift や Kotlin など、他の難読化についても学んでみたいと思いました。
Web では難読化というものはなくミニファイだというのも、驚きました。

Figma Dev Mode で変わる!Flutter の開発体験

概要

以下は、セッションを聞いて小林が作成した概要です。

Flutter の開発体験を向上させるための Figma Dev Move を活用方法について紹介されていました。

資料

学び・感想

Figma Dev Mode とは、エンジニアが簡単に Figma の UI の情報を確認できるモードであり、Figma Dev Mode を活用するとエンジニアとデザイナーの認識相互を減らすことができるということを学ぶことができました。 特に、デザイナーがエンジニアにデザインの完成の意図を伝えるための「ready for review」という機能が用意されているのは知らなかったため、今後活用したいなと思いました。 Figma を単なる単なるデザインツールとしてではなく、デザイナーとエンジニアを繋ぐためのコラボレーションツールとして使うことの大切さを学ぶことができました。

Flutter アプリにおける SLI/SLO を用いたユーザー体験の可視化と計測基盤構築

概要

以下は、セッションを聞いて小林が作成した概要です。

SRE でよく使われる SLI/SLO の概念をモバイルアプリ開発に応用して計測基盤を構築することにより、失敗率やキャンセル率、中断率といった指標を可視化する方法について紹介されていました。

資料

学び・感想

まず、SRE でよく使われる SLI/SLO の概念をモバイルアプリ開発に応用するという発想に驚きました。 さらに、計測ツールを自前で構築して実際に運用することで、既に平均復旧時間の改善など効果が生まれている点にも驚きました。 ローカルストレージを用いて中断率を計測する方法なども紹介されていて、とても勉強になりました。

スポンサーブース

スポンサー企業や、DroidKaigi のブースがありました。
ブースでは様々なノベルティをいただいたり、お話を聞くことができました。 今回 FlutterKaigi には、弊社はスポンサーをしておりませんでしたが、DroidKaigi には弊社もスポンサーをしておりますので、DroidKaigi 2024 参加レポート - エムティーアイ エンジニアリングブログもチェックしてみてください。

また、スポンサーブース内に、以下のようなアンケートもありました。

懇親会・ノベルティ

懇親会では、写真のような軽食や、飲み物を飲みながら、交流を深めることができました。

また、FlutterKaigi のロゴが入ったエコバックやステンレスボトルなどをノベルティとしていただきました。
スポンサーブースを全て回ると抽選ができ、私たちはコースターが当たりました。

感想

以下は、涌井の感想です。
私は Flutter の経験は多くなく、ほぼ初心者という状態で参加しました。 そのため、セッション内容によっては半分理解半分わからないというような状態ではありましたが、しっかり後から調べることで、モバイルアプリ開発者としての知識を増やすという目的は達成できたと思っています。 また、配属先のプロジェクトでは Flutter は現状は使わないようですが、Flutter に限らずモバイルアプリに関わる知識なども深めることができたため、今後の業務のモバイルアプリ開発に活かしていきたいと思います。

以下は、小林の感想です。
Flutter のカンファレンスに参加するのは初めてだったのですが、今までで一番 Flutter について深く学べた 2 日間になりました。 学生時代から継続して Flutter を学んでいますが、まだまだ Flutter について知らないことがたくさんあるということを実感でき、とてもワクワクしました。 また、アプリの開発手法やアーキテクチャなど、Flutter に限らずモバイルアプリ開発全般で役に立つ知見も得ることができました。

おわりに

以上、Flutter Kaigi 2024 の参加レポートでした。

全体通して、Flutter の知見だけでなく、交流も行うことができ、とても有意義な 2 日間となりました。
来年も開催されましたら、ぜひ参加したいと思います。
改めて、FlutterKaigi スタッフの皆様、各スポンサー企業様、ありがとうございました。