私は、いくつかのモデル関連の概念について、本当に良い説明が必要だと思います。MVCのモデル側にいくつかの説明が必要
一般に、Robotlegsのようなフレームワークで記述されているモデルは、アプリケーションステートホルダーまたはドメインステートホルダーの役割を果たしますか?もともと、モデルは完全にドメインベースであると考えていました。つまり、UserModel、LocationModelは、DAOクラスがサーバー上で果たすのと同じ役割を果たすものです。私が見ているソースコードが多いほど、UserAccountModel、ShoppingCartModelなどのように、ドメイン状態ではなくクライアントアプリケーションの状態に関連するプロパティとメソッドがいっぱいです。
私は、人々がVOクラスに複雑な関係を追加するのを邪魔することはない、つまり、ユーザーがたくさんの写真を持っている場合、写真コレクションは明らかにUserVOクラスから省略されています。代わりに、PhotoVOオブジェクトの束は、ユーザIDを持つサービスコールに基づいて、必要に応じてサーバからロードされます。それは、一般的にVOを可能な限り「裸」に保っているという、ある種の経験則ですか?それは、すべてのデータを取得するためにサーバーに行わなければならない呼び出しの数を増加させませんか?さらに、ドメインモデルを一般的に断片化していませんか?
サーバーへの呼び出しが非常に多いため、クライアントストレージに既に存在する可能性のあるオブジェクトをフェッチするのが普通です。クライアント側のキャッシュを作成し、取得しようとしているオブジェクトがすでに存在するかどうか、または一般的には、再度取得するオーバーヘッドは、完全に同期されたオブジェクトを取得する利点サーバーから。それ以外の場合は、変更が発生したときにクライアント側キャッシュに格納されているすべてのオブジェクトを管理する必要があります。私は個人的には、既にサーバーからオブジェクトを取得するオーバーヘッドは、以前に取得されているかもしれないが、それほど大きくないと考えています。私が言っているように新鮮で同期されたデータを持っているほうがいいです。
「ドメインの状態」とはどういう意味ですか? –