🤖

【Androidエンジニア目線】iOSDCに参加してきました!

に公開

はじめに

こんにちは!ディップ株式会社で新卒2年目のAndroidエンジニアをやっている氏家拓海(@southcloud_7960)と申します。

今回はiOSDC Japan 2024に参加してきたので、その参加レポートを書きたいと思います!

iOSDCについて詳細はこちらです。

会場の雰囲気

こんなかんじでした

iOSDC参加に何を期待していたか

ところで、Androidエンジニアである私がなぜiOSDCに参加しようと思ったのかお話したいと思います。(ぶっちゃけAndroidエンジニアもいっぱい来てて珍しい話ではないのですが)

私がなぜiOSDCに参加したのか…それはズバリ、iOSとAndroidで協力して開発をワイワイやっていきたいからです!

私は普段業務でAndroid専門で開発しているので、基本的にiOSのコードを書くことはありません。でも、iOSのコードを読んだりiOSの相談事に混ざったりすることはあります。iOSもAndroidも同じアプリを開発しているので、OSごとの差異こそありますが、提供する機能やデザインは大体同じです。実装方法や設計の考え方など、お互いのコードをベースに話をすることでスムーズに事が運んだりします。また、最近では、さまざまなプラットフォームでKotlinのコードを再利用できるKMP(Kotlin Multiplatform)という技術がアプリ開発界隈で注目されています。今後の開発現場ではよりいっそう、複数のプラットフォーム間で技術的知見の共有をする場は増えていくのではないかと思います。そう、「iOSとAndroidで協力して開発をワイワイやっていく」ことが求められるということです!

私がiOSDCに期待したのは、iOSアプリ開発の最新技術や、iOSとAndroidの両OSで共通する考え方についての学び、連携の取り方など開発体制について学びを得ることです。そうすることで、「iOSとAndroidで協力して開発をワイワイやっていく世界観」に近づけていこうと思います!学びを直接活かせそうなセッションを中心に視聴して、ブースや懇親会でも積極的に話を聞いてきました!

視聴したセッションを紹介

私が視聴したセッションについて、いくつかご紹介したいと思います。

Server-Driven UI入門: 画面のStateを直接受け取るアプローチ

スライド

Server-Drivin UIは「UIをサーバサイドで定義してクライアントに渡す考え方」で、事例を通じて解説をするセッションでした。

Server-Driven UIは初めて聞く言葉だったので、なにかサーバサイドとの連携に活かせそうな知見を期待して視聴しました。サーバ側からUIの構成をそのまま受け取って表示することで、アプリエンジニアが「ユーザ体験の向上」に集中できるというメリットが大きいと感じます。UI表示の細かい変更にかかるコストも意外と大きいので、UI表示に関するビジネスロジックを各プラットフォームで持たないのは大きな負担軽減に繋がりそうです。一方で、そもそもバックエンド側の負担増につながりそうなので、アプリエンジニアに求められるバックエンドの知識や連携は増えると思います。

Androidエンジニアとして、iOSだけではなくバックエンドにも手を出したくなったセッションでした。

複雑さに立ち向かうためのソフトウェア開発入門

スライド

ソフトウェア開発全体における複雑さについて、認知リソース、ワーキングメモリ、認知負荷の3つから解説するセッションでした。

エンジニアの仕事が複雑なのは常日頃から感じることなので、複雑さの正体を一つ一つ紐解いていくアプローチが面白かったです。これから開発で使ってみたい・改めて意識したいテクニックがいくつもありました。特にタスクの切り替えによって認知負荷が上がってしまう話は、だいぶ刺さりました。正直刺さりすぎて、スライドを印刷して額縁に入れて飾っておきたいと思うほどです。あまり多くの仕事を抱えすぎないということは大事にしたいです。

脳への認知負荷について知っておくことで、「あれ、なんか最近パフォーマンス悪いな」と感じた時に原因を特定しやすくなると感じました。

Kotlin MultiplatformでSaaS大規模アプリの生産性を向上させる技術的意思決定と導入効果を最大化するための取り組み

スライド

KMP導入に向けた技術的意思決定のプロセスや、導入効果を最大化するためのノウハウを紹介するセッションでした。

Androidエンジニアとして「待ってました!」って感じのセッションです。KMPにはずっと興味があり、なかなか手を出せずにいた分野なので、実際の導入背景を詳しく聞けたことが嬉しいです。考慮すべきポイントやキャッチアップのやり方などをイメージすることができました。特に、iOSエンジニアがKotlin学習において、型の多さで詰まるという話は「やっぱり難しいんだ」と共感しながら聴いていました。sealed classとかabstract classとか、コードの表現力は上がるけどややこしいですよね。

「iOSとAndroidで協力して開発をワイワイやっていく」ために大きな学びを得られたセッションでした!

参加してみてどうだったか

参加してみて、期待以上の多くの学びを得ることができました!

セッションを聴いてみて、他領域との連携が今後も重要視される流れにあると感じました。AndroidとiOSの連携についてだけなく、バックエンドとの連携についてのセッションもあり、プロダクトに関わる全員の一体感が必要に思えます。「AndroidとiOSで協力してワイワイ開発」だけではなく、「プロダクトに関わるみんなでワイワイ開発」を目指していきたいですね!

また、みんな発表の仕方が上手いなと思いました。例えば、手書きのイラストで紙芝居のような解説を挟んだり、思わずXでポストしたくなるようなユーモアを入れたり、時間の長さをまるで感じさせない面白い発表ばかりでした。自分が登壇する立場になった時に真似したいです。

他にも、各社のブースを全部回ってお話しできたことも嬉しいです。今回は自社のブースや運営スタッフではなく参加者だったので、セッションの視聴やブース巡りに全力で時間を使うことができました。自社と同じ課題を抱えている話や、技術の導入についてのお話しなど、さまざまな話題で話すことができ、知見を広げることができたと感じます。大きなカンファレンスならではの学びを得ることができました。

さいごに

iOSDCは今年で3回目の参加となりましたが、今年もコンテンツ盛りだくさん学びマシマシで楽しい3日間を過ごすことができました。来年も参加したいです!

イベントに関わった方々、本当にありがとうございました!

また、これを読んでくださってるiOSエンジニアのみなさん、来年はぜひDroidKaigiでもお話しして、「iOSとAndroidで協力して開発をワイワイやっていく」をできたら嬉しいです!

dipテックブログ

Discussion