【イベントレポート】ZOZO Tech Meetup - iOS/Androidを開催しました!

レポート:ZOZO Tech Meetup - iOS/Android

はじめに

こんにちは。DevRelブロックの@wirohaです。7月11日にZOZO Tech Meetup - iOS/Androidを開催しました。ZOZOのiOSエンジニアとAndroidエンジニアがそれぞれの技術領域にフォーカスして紹介するイベントです。オンラインとオフラインのハイブリッドで開催しました。

オープニングの様子

登壇内容まとめ

今回は弊社から9人とたくさんのエンジニアが登壇しました。

コンテンツ 登壇者
[Android] JankStats LibraryでJankを検出しよう 高橋啓太
[Android] Compose for iOS for ZOZOTOWN 井上晃平・ 財部彰太
[iOS] Visionフレームワークを使って非接触でMacを操作しよう 中岡黎
[Android] ComposeでWidgetを実装できるライブラリ「Glance」がbetaになったので触ってみる 野々村樹
[iOS] Pathを活用してSwift Chartsの限界を超えろ 山田楓也
[Android] よく書く同じようなコードはAndroid StudioのLiveTemplateを使ってテンプレート化しよう 山田尚吾
[iOS] FAANS iOSアプリでGitHub Copilotを使い倒してみた 中島頌太
[iOS] 10年以上の歴史を持つプロダクトのRosettaフリー 〜その中で遭遇した問題と解決法を公開します〜 小松悟

当日の発表はYouTubeのアーカイブでご覧下さい。

www.youtube.com

[Android] JankStats LibraryでJankを検出しよう

高橋啓太 / ZOZOTOWN開発本部 ZOZOTOWNアプリ部 Android2ブロック

speakerdeck.com

高橋からは、Jank検出ツールであるJankStats Libraryについて発表しました。Jankとはフレームがスキップされてアプリがスムーズでなくなることを指し、その検出・修正は快適な操作感を維持するために重要です。JankStats Libraryは本番環境で発生しているJankの原因が分析可能になる点が優れているそうです。導入方法・使用方法・実装時に詰まりそうな点が紹介され導入しやすそうでした。

[Android] Compose for iOS for ZOZOTOWN

前半担当:財部彰太 @hamuyatti / ZOZOTOWN開発本部 ZOZOTOWNアプリ部 Android1ブロック

後半担当:井上晃平 @nemo-855 / ZOZOTOWN開発本部 ZOZOTOWNアプリ部 Android2ブロック

speakerdeck.com

こちらは2人からの発表です。前半は財部よりCompose for iOSの基礎知識について、後半は井上よりZOZOTOWNの画面を作ってみたというお話をしました。ComposeのコードでiOSの画面も作れるのはAndroidエンジニアにとっては嬉しいですね。まだalpha版とのことですが、カルーセルやGridのスライダーもしっかり動いていました!

[iOS] Visionフレームワークを使って非接触でMacを操作しよう

中岡黎 @rei_nakaoka / 計測プラットフォーム開発本部 計測アプリ部 iOSブロック

speakerdeck.com

中岡の発表は非接触でMacを操作するとはどういうことか紹介するデモ動画からはじまりました。手を上下に動かして画面のスクロールをしたり、指でつまむような動作をしてマウスポインタを動かしたりと、Macを操作できていました。Visionフレームワークを使って手のポーズを認識し、それに応じてCGEventを発生させることで実現できるそうです。

中岡はiOSDC Japan 2023でも登壇します。こちらも聞きに来ていただけると嬉しいです!

fortee.jp

[Android] ComposeでWidgetを実装できるライブラリ「Glance」がbetaになったので触ってみる

野々村樹 @nono_develop / ブランドソリューション開発本部 フロントエンド部 WEARAndroidブロック

speakerdeck.com

野々村からはComposeでWidgetを実装できるライブラリ「Glance」を触ってみたという発表です。Composable関数を書くことでWidgetを作成できていました。ただしGlance専用のAPIを使用するためまだ多少制限があるそうです。betaでGlanceThemeというThemeが追加されるなど便利になっているので、今後が楽しみですね!

[iOS] Pathを活用してSwift Chartsの限界を超えろ

山田楓也 @gamegamega_329 / ブランドソリューション開発本部 フロントエンド部 WEARiOSブロック

speakerdeck.com

次は山田楓也からSwift ChartsではサポートされていないグラフもPathを活用すれば描画ができるという発表です。Pathを使ってアニメーション付きの円グラフが綺麗に描画されていました。レーダーチャート、メーター、多重ドーナツ型のグラフも作成できていました。Swift Chartsの限界を超えていました!

[Android] よく書く同じようなコードはAndroid StudioのLiveTemplateを使ってテンプレート化しよう

山田尚吾 @yshogo87 / ブランドソリューション開発本部 フロントエンド部 FAANSブロック

speakerdeck.com

続いて山田尚吾より、Android StudioのLiveTemplateについて発表しました。略語でテンプレートを呼び出せる機能で、とても便利そうだとTwitterでも盛り上がっていました。Gitでの管理もできるためチームの実装を楽にするためにも、設計を強制するためにも使えます。すぐに取り入れて活用できそうな内容でした!

[iOS] FAANS iOSアプリでGitHub Copilotを使い倒してみた

中島頌太 @burita083 / ブランドソリューション開発本部 フロントエンド部 FAANSブロック

speakerdeck.com

中島からは、いまみなさまの関心が高いGitHub Copilotの導入事例について発表しました。導入箇所を検討し試したところ、同じようなコードを複数書く場面ではうまく活用できていました。新規にコードを書く場面ではまだ改善の余地があるそうです。

GitHub Copilotの全社導入とその効果については先日堀江(@Horie1024)が記事を公開し、多くの反響をいただいています。ぜひこちらもご覧ください!

techblog.zozo.com

[iOS] 10年以上の歴史を持つプロダクトのRosettaフリー 〜その中で遭遇した問題と解決法を公開します〜

小松悟 @tosh_3 / ZOZOTOWN開発本部 ZOZOTOWNアプリ部 iOS1ブロック

speakerdeck.com

小松からはRosettaの説明、課題、その解決方法について熱のこもった発表がありました。RosettaはApple silicon上でx86_64用のバイナリを動かす翻訳プロセスです。いつまでサポートがあるかわからないためRosettaフリーを進めました。課題は多く大変な道のりのようでしたがひとつずつやり切り、副次的効果としてビルド時間の高速化・新規メンバーのセットアップ簡易化などのメリットも得られていました。

小松もiOSDC Japan 2023に登壇しますので、ぜひ聞きに来てください!

fortee.jp

最後に

司会・登壇者のみなさま

LT終了後にオフライン会場では懇親会を行いました。食事と飲み物を片手に交流を楽しんでおり賑やかな雰囲気でした。iOSエンジニアの方が「Androidも開発してみたくなった」と言ってくださったり、私自身も元AndroidエンジニアながらiOSの知識が広がったのを感じたり、相互に関心を持つ良い機会となりました。みなさまご参加ありがとうございました!

ZOZOでは今後もiOSやAndroidのイベントを開催していきます。そして一緒にサービスを作り上げてくれるiOS/Androidエンジニアを募集中です。ご興味のある方は以下のリンクからぜひご応募ください。

hrmos.co

hrmos.co

カテゴリー