FlutterKaigi 2023 参加レポート

エキサイト株式会社の@mthiroshiです。

FlutterKaigi 2023に参加してきましたので、その内容をレポートします。

FlutterKaigi 2023の概要

FlutterKaigi とは、FlutterやDartの知見を共有する技術カンファレンスです。 flutterkaigi.jp

会場は株式会社ナビタイムジャパン様にて行われました。

スタート前の会場の様子

聴講したセッション

セッション数は基調講演を含めて21セッションありました。

聴講したセッションについて紹介します。

基調講演「Flutter's 8 years journey」

Flutter GDEの方から、Flutterの8年間の歩みについてお話しいただきました。

Flutterは2015年にDart Developer Summitにて発表されました。 その後、Dartが開発言語として進化するとともに、FlutterもUI フレームワークとして進化してきました。

Flutterは、モバイルアプリの開発においては既に習熟してきています。今後の展望としては、Flutter WebやDesktopアプリといったモバイル以外の領域も充実していくであろうとのことでした。 また、Casual Games Toolkit のゲーム開発や、3Dレンダリングサポートの話もあり、Flutterが更に幅広く使われていく進化が期待できると思いました。

私がFlutterを触り始めたのは2022年からだったので、Flutter登場初期の話は興味深かったです。

「Flutter アプリにおけるテスト戦略の見直しと自動テストの導入」

WINTICKET のテスト戦略の見直しと改善事例の紹介でした。

speakerdeck.com

過去の障害事例から改善点を考えたり、テストピラミッド、テストマトリクスを用いて、体系的に現状を分析し、注力する部分を導いていく内容でした。

まとめとして、どのようなアプローチを取るべきか、まずは現状のプロダクトやチーム体制を分析することが重要であることを挙げていました。 また、導入コストが高いことや効果の実感までに時間を要することを挙げており、テスト設計に取り組むべきと思いつつも、ハードルが高い点は検討すべきと感じました。

「詳解!Flutterにおける課金実装」

TOKYO MIX CURRYのアプリ決済についての事例でした。 TOKYO MIX CURRYとは、アプリでしか買えないカレーを提供するサービスであり、実店舗におけるアプリ決済の具体的なシステム構成や陥った課題についてお話し頂きました。

システム構成としては、アプリ、サーバーサイドが登場する一般的な構成に加えて、決済端末であるSquareリーダーやレシートをプリントするためのEpsonといったハードウェアとも連携する仕組みになっています。

実際にあったユーザーの意図しない操作や外部SDK連携で困ったことがあり、それらを解決した方法について紹介頂きました。

DartによるBFF構築・運用 〜Dart Frog×melos〜」

株式会社ゆめみさんのDartによるBFFの事例について紹介頂きました。

speakerdeck.com

BFFは、一般的にクライアントサイドが開発することが多く、今回はクライアントサイドがFlutterアプリだったので、DartでBFFを構築することに至ったとの事でした。 サーバーサイドのDartフレームワークには、いくつか選択肢がありますが、今回は軽量かつ比較的新しいDart Frogを採用したそうです。

その他、Melosというパッケージを使ったマルチパッケージ構成(モノレポ)の話や、BFFとアプリのAPIレスポンスの型を共通化の話もあって興味深かったです。

Dartのコード自動生成の仕組みと、コード自動生成のパッケージを自作する方法について」

freezedやretrofitといったコードの自動生成をするパッケージが行っている自動生成の仕組みについての内容でした。

www.slideshare.net

サンプルプロジェクトが公開されているので、スライドと合わせて理解を深めていきたいです。 github.com

「Flutterで構築する漫画ビューア」

弊社所属のアプリエンジニアである katsuさんが、漫画ビューアの実装について登壇しました。

speakerdeck.com

内容の補足についてこちらの記事で紹介しております。 tech.excite.co.jp

「我々にはなぜRiverpodが必要なのか - InheritedWidgetから始まるappstate管理手法の課題」

Flutterにおける状態管理の仕組みと課題、解決策についての紹介でした。

docs.google.com

Riverpodでは、状態管理が持つ多くの課題に対して解決策を用意しており、利用する側はその解決策を理解しておく必要があるとのことでした。 会場でも多くの方がRiverpodを使っていると手を挙げており、興味関心が高いセッションだったと思います。

ノベルティー

ノベルティーグッズやスポンサー企業様のステッカーを頂いてきました。 ステンレスマグカップがかっこよかったので、使っていきたいと思います。

ノベルティーのステンレスマグカップ

おわりに

久々にオフライン開催のカンファレンスに参加してきました。

オフラインならではの会場の空気感や懇親会が楽しく、有意義なカンファレンスを体験できました。 運営して下さったFlutterKaigiスタッフの皆様、各スポンサー企業様、ありがとうございました。

採用アナウンス

エキサイトではフロントエンジニア、バックエンドエンジニア、アプリエンジニアを随時募集しております。長期インターンも歓迎していますので、興味があれば連絡いただければと思います。

募集職種一覧はこちらになります!(カジュアルからもOK) www.wantedly.com