iOSDC Japan 2020 に参加しました #iosdc

初めまして、はんだと申します。今回初めて当ブログに投稿させていただきます。

普段は仙台オフィスで主にiOSアプリの開発業務を担当しています。今年の7月に弊社に入社しまして、エンジニアとしてはまだまだ駆け出しなのですが、今回iOSDC Japan 2020に参加する機会をもらったのでキャッチアップのためにぜひ!ということで参加してまいりました。

iOSDC Japan 2020は、9月19日から9月21日までの3日間に渡り開催されたのですが、私は9月20日からのDay1とDay2に参加させていただきました。その中から、個人的に面白いなと思ったセッションを紹介させていただきたいと思います。

iOSDC Japanとは

iosdc.jp

iOSDC JapanはiOS関連技術をコアのテーマとしたカンファレンスで、この分野では日本で最大級のものです。

例年は都心の大学キャンパスなどで開催されているのですが、今年のiOSDC Japan 2020はコロナウイルスの関係でオンラインでの開催となりました。このご時世ですので、開催すること自体が大変だったかと思いますが、オンラインという形で開催してくれた運営の方々には頭が下がります。

なお、たくさんのノベルティを郵送でいただきました。私はこれが初めてのiOSDC Japan参加ということで、テンションが上がります。

f:id:handah:20200927105227j:plain
iOSDCノベルティ

Day1

iOSリジェクト戦記 ~リジェクトされないための課金ページ~

fortee.jp

こちらは、iOSアプリで課金処理を実施する際に準備することになるであろう、課金ページについてのセッションです。
課金ページの実装について、わかりやすく(ユーモアたっぷりに)まとめられています。スピーカーの方の実体験が元になっているのでお話としても面白いですし、実際のアプリのスクリーンショットなども豊富なので、具体的なイメージが湧くのではないでしょうか。

課金ページの実装で困った際には、ぜひ参考にさせていただきたいと思いました。

iOSエンジニアだし、Androidアプリも作れるでしょ?

fortee.jp

こちらは、iOSアプリ開発についてのセッションではありません。
iOSアプリの開発はしたことがあるけれどもAndroidアプリの開発はしたことがないという方に向けた、Androidアプリの開発をざっくり理解しようというセッションです。Androidアプリ開発やKotlinについて、iOSアプリ開発やSwiftと比較しながら丁寧に説明されています。

私はAndroidアプリの開発をしたことがないのですが、こちらのセッションを通してなんとなくですがAndroid開発のイメージが湧きました。また、Kotlinについてもこれまで触ったことがなかったのですが、Swiftと記述が似ているようなので、これからは敬遠せずにチャレンジしたいです!

Day2

詳解Storyboard

fortee.jp

こちらは、タイトルの通りStoryboardの詳細についてのセッションです。StoryboardでできることはUI構築だけでなく、様々な機能を持っていて、それらの機能について詳しく説明されています。
中でも私が面白いと思ったのがStoryboardを使用したリストア機能(アプリから一旦離れても入力情報などを復元できる)で、Storyboardを使ってこんなことができるとは知りませんでした。

UI構築では、Appleが開発に力を入れているSwiftUIに徐々に移行していくものと思われますが、既存アプリの全てをSwiftUIに置き換えるのはなかなか大変ですし、まだまだStoryboardに頼る機会は多そうです。

大解剖!UIColorファミリー

fortee.jp

こちらはUIColorクラスについて、普段の開発では意識しないような細部まで踏み込んでのセッションです。UIColorにはたくさんのサブクラスがあるそうです。(なんと18個!)
私自身、UIColorのインスタンスを作るときはUIColor.whiteとかUIColor(red: 1, green: 1, blue: 1, alpha: 1)とか、色んな方法でなんとなく初期化していますが、このようなことができるのはたくさんのサブクラスが上手いことやってくれているおかげだそうです。

UIColorの実装で困った時にはこのセッションを思い出したいと思います。

SwiftUIを導入したアプリ設計

fortee.jp

こちらはSwiftUIを使ってアプリを制作する場合に、どのような設計をすべきかについてのセッションです。
最近はAppleがSwiftUIの開発に力を入れているとはいえ、実装が難しい機能があったり、サードパーティのライブラリとの連携がうまくいかなかったりすることも多いようです。そのため、こちらセッションではUIKitをベースにしつつも一部でSwiftUIを使ったアプリの設計について考えています。

全面的にSwiftUIを採用するというのはまだまだ難しいようですが、SwiftUIは開発が進みこれからどんどん普及していくと思いますので、その日のためにしっかり準備していきたいと感じました。

まとめ

今回ご紹介したような通常のセッションのほか、LT(5分間の短時間セッション)も多く、たくさんの話題を聞くことができました。
ニコニコ動画(ニコニコ生放送)での開催だったので動画上にリスナーのコメントが流れたり、セッション終了後にボイスチャットでスピーカーに質問ができたりと、運営の方々の工夫のおかげでオンライン開催でありながらコミュニケーションも取れるすばらしいカンファレンスでした。

振り返って見ると、SwiftUIのような新しい分野のセッションが多くあり、とても勉強になりました。
また、先ほどご紹介したUIColorのサブクラスのような、今まであまり考えたことのないニッチな分野のセッションも多く、アプリの仕様や実装方法などを考える良い機会になりました。

これを機にiOSに関する知識を深め、今後のアプリ開発に活かしていきたいです。


告知

さてさて、別件になりますが告知させてください!
今秋仙台で「Go Conference’20 in Autumn SENDAI」が開催される予定となっております!

Go Conference’20 in Autumn SENDAI

sendaigo.connpass.com

弊社仙台オフィスのサーバサイドエンジニア有志が当カンファレンス運営の中心として携わっています!(当日は私もスタッフTシャツを着てお手伝いする予定です。)
無料で参加できますので、少しでも興味のある方はぜひご参加ください!