Swift Concurrencyで複雑な認証ロジックをシンプルに魅せる by nade

iOSDC Japan 2024
レギュラートーク(20分)

Swift Concurrencyで複雑な認証ロジックをシンプルに魅せる

5

Swift Concurrency が導入されてから「Swiftが難しくなった」という声をよく耳にします。
実装者はこれまで見えていなかったデータ競合や再入可能性などの問題に対処する必要が出てきており、これまで以上に高いレベルの言語知識が求められています。
しかし、実装者がSwift Concurrency を正しく活用することで、複雑なロジックやユーザーの操作が絡んだ非同期なフローを抽象化し、再利用性の高い形でよりシンプルなインターフェースを利用側に提供することが可能です。

本トークでは、タップルの認証フローをフルスクラッチで刷新した事例を通じて、以下のような複雑な課題を Swift Concurrency を活用して解決した方法を共有します。

  • 認証SDKを通じた状態の更新や判定など、クライアントから切り離せないロジックの肥大化
  • Sign in with Apple、SMS認証などの画面呼び出しを伴う認証フローの共通化
  • 外部SNSや認証SDK周りのエラーハンドリング

このトークを通じて、Swift Concurrency のポジティブな側面や柔軟なコード表現力を学び、
自分たちの業務での複雑なユースケースに活用するイメージを持つことができるようになるきっかけを提供します。