0

問題

CoreLocation を使用してユーザーがたどったパスと、各ポイントの座標を含む配列の配列を計算するクラスがあります (ユーザーの場所が変更されたときに取得されます)。このクラス メソッドはビュー コントローラーによって呼び出されていますが、そのデリゲートを別のクラスに設定して、結果を Core Data に保存するか、データベースにアップロードしたいと考えています。以下を使用して、配列を View Controller に返すことができます。

PathFinder.delegate = self

次に、View Controller にデリゲート プロトコルを実装させますが、これは私が望むものではありません。

私が考えたこと

View Controllerから簡単にアクセスできるように、データをデータベースにアップロード/コアデータに保存するクラスをシングルトンクラスにすることを考えました。例えば

PathFinder.delegate = <MY SINGLETON CLASS>

結論

これを行う最良の方法は何ですか?配列をサーバーにアップロードするコードを PathFinder クラスに入れるのは悪い習慣でしょうか? どんな助けでも大歓迎です。

4

1 に答える 1

1

私はこのようなものを持っています-画像のCore Dataリポジトリを管理するシングルトンクラス(リポジトリ内の一部、ファイルシステム上の一部、エンティティ内のURL)。

サービスを必要とするすべてのオブジェクトがインポートするシングルトン クラスを持たないのはなぜですか? そうすれば、オブジェクトに何かをするように指示し、それが機能すると、オブジェクトはリポジトリに保存するように指示します。委任プロトコルを使用して、成功したかどうかを知ることができますが、その保存をプロセスの駆動と結果の把握から分離するだけです。

于 2012-09-22T22:47:16.060 に答える