Tech Blog

グローバルな家族アプリFammを運営するTimers inc (タイマーズ) の公式Tech Blogです。弊社のエンジニアリングを支える記事を随時公開。エンジニア絶賛採用中!→ https://timers-inc.com/engineering

WWDC 2018 2〜3日目まとめ #wwdc #wwdc18 #wwdc2018

f:id:timers-tech:20180606145501j:plain

アメリカにきてから連日何かしらお酒を飲んでいるせいか、体調が最後まで持つか心配なかっくん(@fromkk)です。
Keynoteに引き続き2日目〜3日目で見たセッションのまとめをしたいと思います。

2日目

Automatic Strong Passwords and Security Code AutoFill

iOS 11より搭載されたAutoFillがiOS 12より更に進化しました。
OSがより強力なパスワードを生成する様になりました。
もはや人間が覚えられる様な物では無いのですが、そこはiCloud Keychainが覚えてくれるので忘れる心配は要らない模様。
ログインする際はFace ID等で認証した後に利用するので他人に利用される心配もありません。
作成されるパスワードもある程度のフォーマットを指定する事が可能になっており、バリデーション用のウェブページも用意されています。
また、SMS認証などで利用されるナンバートークンも自動的に補間される機能が搭載されました。

Introducing Create ML

新しいmacOS Mojave上のXcode Playgroundから利用出来る機能です。
これまで機械学習のモデルはTensorFlowやKesraなどのツールで学習しモデルを生成していました。
今後は画像の分類、文章の分類、表形式のデータの値の推定のモデルの生成がXcodeのみで可能になります。
たった数行のコードで .mlmodel が作成出来るのは夢の様で様々なアプリで機械学習が利用されるきっかけとなりそうです。

3日目

What's New in Testing

コードカバレッジを計測するツールが進化しました。
カバレッジを取得するターゲットが指定出来る様になりました。
これまでも -destination を複数してしていれば複数端末で同時にUIテストの実行が可能でしたが同じ端末では不可能でした。
Xcode 10より同じ端末で複数のテストが実行可能なParallel testingが追加されました。

What’s New in User Notifications

リッチな通知はiOS 10から実装されていましたが、更にカスタマイズが可能になりました。
通知のアクションのハンドリングが可能になったり、通知画面上に表示したボタンに反応する事が出来る様になりました。
それに伴いユーザーアクションによって画面が閉じられる必要があるので dismissNotificationContentExtension() が実装されました。
また、通知をスワイプして、「Manage」を表示すれば通知を管理する画面が表示される様になりました。
ユーザーにとっては通知を簡単に管理する事が出来る様になった反面、通知が簡単にOFF出来る様になるので、通知を大量に送信するアプリは注意が必要かもしれません。

High Performance Auto Layout

UITableViewやUICollectionViewのセル等頻繁にAutoLayoutが計算される様な時に、updateConstraints() 内で NSLayoutConstraint.deactivate([...])NSLayoutConstraint.activate([...]) を繰り返すのはパフォーマンスが悪い。
[NSLayoutConstraint]nil の場合に作成し、それ以降は保持しておいたものを使い回すのが良い。
固定化出来るものは固定して、変更の必要があるものだけ変更するのが良い。
まだBetaだがInstrumentsにAutolayout Performanceが追加される。

まとめ

他にもいくつか拝見したんですが、理解が及ばなかったので省略させていただきました。
UIKitのラボにも参加しましたが解決に至らなかったのでもう少し自力で頑張ろうと思います(笑)
本日のランチセッションでWWDCも折り返しだとアナウンスがあり少し寂しい気持ちになりましたが、残り2日精一杯楽しみながら学んできたいと思います。

積極採用中!!

子育て家族アプリFammカップル専用アプリPairyを運営するTimers inc. では、現在エンジニアを積極採用中! 急成長中のサービスの技術の話を少しでも聞いてみたい方、スタートアップで働きたい方など、是非お気軽にご連絡ください! 採用HP : http://timers-inc.com/engineerings

Timersでは各職種を積極採用中!

急成長スタートアップで、最高のものづくりをしよう。

募集の詳細をみる