最近、Swiftを使用してiOSでネットワーク関連の作業を行う、より複雑なプログラミングを開始しました。これにより、ネットワーキングだけでなく、View Controller間の情報交換にも多くの非同期コードが導入されました。
とにかく、私の質問は単純で、非常に一般的です。私が知る限り、コールバックを行う方法は(少なくとも)4つあります。そのため、どちらの場合もどちらが良いかという一般的なルールはありますか?
アプリケーションのユースケース
さまざまな観測パターンに対する私の見解を以下に示します。コメントに必要と思われる場合は、このリストを随時更新する可能性があります。
あなたが言及しなかったいくつかのパターン:
viewDidLoad
などが例です。プロトコルによって主に取って代わられたもう1つのパターンですが、すでにクラス構造が配置されている場合に便利です。最後に、上記のすべてのパターンに取って代わることができるreactive programming(たとえば、ReactiveCocoaおよびRxSwift)があります。学ぶには少し時間がかかりますが、こつをつかめば、1つのパターンですべての観察ニーズに対応できます。