私は現在、Firebaseのデータベース機能の一つである Cloud Firestore を活用したアプリ開発を行なっています。
Firestoreに限らずアプリ開発においてサーバーとの通信を行う実装は、取得したい各データ毎に似たような処理を書いていくことになるので、なるべく共通化したいという思いがあります。
今回 Firestore との通信において、Swiftの言語機能である protocol, extension, generics を活用して共通化を実現しました。
本トークではこちらについてご紹介したいと思います。