View and View ControllerはMVVMでViewと見なすことができますが、ビジネスロジック用のModelViewでデリゲートを使用します。MVVMにデリゲートを配置する正しい場所は何ですか
1
A
答えて
1
一般に、ビューの代理人の場合はモデルに入れます。 UIに関連しないモデルレベルのデリゲートの場合はに実装してください。
1
あなたの質問はかなり不明ですが、私はまだあなたにアウトライン/ガイドラインを提供することができます。
通常、アプリの複雑さが増していくにつれて、データごとにカスタマイズして記述できるビューごとにビューモデルが必要になります。ビューコントローラをきれいにして読みやすくするため、ビューコントローラはカスタムビューのコンテナとしてのみ使用する必要があります。カスタムビューにはビューモデルプロパティー(didSet
)があり、ビューを変更および構成できます。たとえば、私がtableViewからセルをデキューするとき、私は(cell as? MyCustomCellClass)?.viewModel = aViewModel
に非常に読みやすくするようにします。デリゲートを使用してビジネスロジックを処理するには、デリゲートを適切に設定してサブビューとビューをやりとりするか、tableViewCellからUITableViewDelegate
またはUITableViewDataSource
を管理して拡張しているコントローラに渡します。つまり、MVVMアーキテクチャは、カスタムビューを構成するために使用できるカスタムビューモデルに依存しますが、ビジネスロジックを管理し、下位レベルのものと上位レベルのものとの間のデータフローを処理するコントローラオブジェクトがあります。助けたい具体例がある場合は、コードを記入してください。これが助けて欲しい!
関連する問題
- 1. log4j.jarをjavaディレクトリに配置する正しい場所はどこですか?
- 2. デリゲートを置くための一般的な場所は何ですか?
- 3. Android MVVM:アダプタを置く場所は?
- 4. Rails - cronジョブを配置するための正しい場所
- 5. MVVMでobservablesをバインドする場所は?
- 6. MySQLストアドプロシージャを配置する場所は?
- 7. アンドロイドアプリケーションでデータベーステーブルを配置する場所
- 8. Vistaにグローバルアプリケーションデータを配置する場所
- 9. サブページコンポーネントをIonic2に配置する場所
- 10. オニオンアーキテクチャにConnectionStringを配置する場所
- 11. 正しい ".clang-format"の場所は何ですか?
- 12. flowtypeの.js.flowの正しい場所は何ですか?
- 13. 場所の上に位置マーカーを配置しますか?
- 14. Rails 3:カスタムバリデータークラスを配置する場所はどこですか?
- 15. js_pluginsとcss_pluginsを配置する場所はどこですか?
- 16. UITableViewを配置する場所はどこですか?
- 17. ダガー2スコープは、プレゼンターを配置する場所ですか?
- 18. ビジネスロジックを配置する場所はSymfony 2モデル層ですか?
- 19. Web APIは、プライベートメソッドを配置する場所ですか?
- 20. フラグメント内で、OpenCV4Androidを初期化する正しい場所は何ですか?
- 21. cqrsにいくつかのドメインロジックメソッドを配置する場所?
- 22. MVVM:ほとんどのViewModelで使用されるメソッドの配置場所
- 23. マルチスレッド。 MyLock.acquire()、ロックを配置する場所
- 24. ベストプラクティス:mysqlフィールドを配置する場所
- 25. WPF MahApps.Metro - ResourceDictionariesを配置する場所
- 26. laravelロガークラスを配置する場所
- 27. Database.SetInitializerを配置する場所
- 28. WPF Prism - リソースを配置する場所
- 29. サービス層を配置する場所
- 30. テンプレートボタンのクリックイベントを配置する場所
ありがとう、わかりやすかったです。 –
デリゲートがネットワークに関連している場合、UIに直接関係しないものはモデルに残ります。 –
@SaurabhSaini、はい。また、ネットワークデータを受信して解析するときに通知を使用したり、カスタムデリゲートを作成してUIを更新することができます。そのデリゲートはビューモデルで実装する必要があります。 – kelin