1

デザインについて質問があります。BreezejS と AngularJS を使用して SPA を構築するための Visual Studio の ToDo テンプレートのコードを確認しました。

さまざまな初期化を行う todo.model.js ファイルがあります。興味深い点の 1 つは、追加機能 (addToDo) を使用して TodoList エンティティを拡張することです。

代わりに todo.controller に addToDo 関数を持ち、それを $scope に追加するよりも、そうすることの利点は何ですか?

4

2 に答える 2

2

レベルの永続化操作のすべてをTodoListTodoList から別のコンポーネントに移動することをお勧めします。コントローラーは潜在的な候補です。

これらの操作がTodoList.

コミュニティ テンプレート」の設計目標の 1 つは、すべての「TodoList」アプリをできるだけ互いに類似させることでした。設計を一定に保つことで、読者がさまざまなフレームワーク (Knockout、Breeze、Backbone、Ember) の効果を比較しやすくなりました。それらのいずれかがこれらの操作を再配置した場合、その変更がターゲット フレームワークによって課されたものなのか、単に実装者の好みによるものなのかはわかりません。私たちはエゴを取り除き、関連するテクノロジーに集中できるようにしたいと考えました。

これらのテンプレートをゴスペルとして扱わないでください。いくつかの点で、それらは非現実的です。1 つのオブジェクトの 1 つのプロパティが変更されるたびに保存することは想像できません。

彼らから学びましょう。それらを健全な懐疑心で見てください。このような質問をし続けます。あなたにとって意味のあるものを取ってください。残りは捨てます。

于 2013-04-21T05:45:34.347 に答える
1

これは、エンティティにリスト内のアイテムの独自の保存/削除機能を処理させているだけだと思います。コントローラーは、新しいリストの追加のみを処理しているようです。コントローラーをきれいに保つ以外に利点があるかどうかはわかりません。

于 2013-04-19T22:58:43.593 に答える