iOSDC Japan 2019 前夜祭・Day1レポート


こんにちは、猪俣です。iOSDC Japan 2019 に参加しています。

概要

iOSDCは今年3回目となるiOSのカンファレンスイベントです。
最終日が残っている現在でも来場者数がすでに950人以上、前年を上回る人数がチェックインしているそうです。

セッションは同時に4セッション+アンカンファレンスを行う形式で、しかも2.5日間も開催しています。
どのセッションも目を引く内容ですので、何を聴くか迷います。

この記事では、たくさんあるセッションスライドの中から、前夜祭・Day1で私が聴いた発表をご紹介します。
後日すべての発表の動画がオンラインで公開される予定だそうです。楽しみですね。

発表紹介

SwiftのStringの文字数の数え方を完全理解する

SwiftがUnicode をどのように扱い、文字列操作を実現しているか、というSwift Stringの裏側についての発表です。
Unicodeは絵文字や日本語を使う上で避けられません。
Unicodeをよく知らない人でもわかりやすいように丁寧に説明されていました。

Advanced Segue (2019年のSegue事情)

ストーリーボードを使うプロジェクトで役立つSegueについての説明です。
基本のセグエの種類、使い方の紹介から、思った以上に何でもできるカスタムセグエ実装方法まで紹介されていました。

セグエはアプリの設計によっては使えない(または使わない)場合もありますし、良し悪しや好き嫌いもありますが、
とくにあまりセグエを使ったこと無い方や食わず嫌いしている方は、この発表を観ることで意外な発見があるしれません。

個人的には、最近はセグエに依存しない設計での開発が多いですが、
要件次第ではセグエのほうが楽なためカスタムセグエやその他のセグエを使うこともあります。

ライブラリのインポートとリンクの仕組み完全解説

ライブラリやフレームワークについてのだいぶ濃い話です。
発表では,かなり重厚なスライドになっています。

この発表ではライブラリ・フレームワークがどうやってアプリに組み込まれているかを知るために、
動く状態から環境を壊して分解して調べてひとつずつ理解していきます。

こうすることで、逆に「動かない状態から動く」ようにして、トラブルシューティングができるようになれるという発表でした。

iOSのフレームワーク・ライブラリを使っていると、なぜかエラーで動かなくなってトラブルシューティングすることがよくありますが、
エラーで困ったときにこの発表を見ると、問題切り分けして解決につなげるヒントになりそうです。

クリーンコードアドベンチャー

開発しやすい、バグになりにくいクリーンなコードをどう実現するか?を具体的に試行錯誤しながらも目指していく発表です。
参考になりそうな、Kickstarterのオープンソースなどの情報を紹介されていたり、
Protocol やGeneric を使ってクリーンにコードを書いていく設計手法についても丁寧に紹介されています。

発表者のshizさんが発表の補足説明のツイートをされていました。

サービスにおけるデザインシステムの構築

自社サービス Pococha での事例をもとに、デザインシステムというものがいかにUI周りの認識のズレの解決、改善に役に立つかを紹介されていました。

どうしてもサービスを開発・運用していくと、エンジニアやデザイナ同士で認識がズレていきます。
たとえひとりで作っていたとしても、ルールが定まっていないと画面ごとにUIのユーザ体験が変わってしまう、ということもあります。
iOSだけでなくAndroidも、となると尚更です。

これを解決するためにはデザインの言語化・仕様化が重要で、
効率的に実現するために規模に関わらずデザインシステムを構築するのがいいですよ、というお話でした。

感想

実際に聴いた発表はいずれも(LT含めて)全体的にわかりやすい発表、レベルの高い発表が多く、どれも良い発表でした。

1日目終了時点で個人的に特に面白かった発表は、

  • ライブラリのインポートとリンクの仕組み完全解説
  • サービスにおけるデザインシステムの構築
  • クリーンコードアドベンチャー

の3つでした。スライドを見ながらまた色々ためしてみたいと思います。