RxSwiftからSwift Concurrencyへ〜通信処理を効率よくリファクタリングするためのテスト戦略〜 by 417.72KI

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

RxSwiftからSwift Concurrencyへ〜通信処理を効率よくリファクタリングするためのテスト戦略〜

417_72ki 417.72KI 417_72ki
3

Swift Concurrencyの登場から2年が経過し、実際のプロダクトでもRxSwiftからSwift Concurrencyへの移行が進んでいることでしょう。
しかしいきなり脱RxSwiftしようとすると得てして想像以上に影響範囲が広くなるため、影響範囲を抑えるべくミニマムなリプレースから始めていくことになります。

本トークでは、どんなシンプルなアプリでも非同期処理から逃げられない通信周りの処理について、RxSwiftによる実装からSwift Concurrencyによる実装へ最小工数で移行したプロセスについて説明します。

  • RxSwiftベースの通信処理実装
  • モックライブラリを使った通信処理のテスト実装
  • RxSwiftベースのテストとSwift Concurrencyベースのテスト
  • deprecated を使った未移行箇所の特定方法