プロジェクトに必要なオブジェクトを設計する場合、共通の属性に基づいてグループ化すべきかどうかを考慮することは、アプリケーションの設計、実装、保守の容易さのために重要です。[モデル]リポジトリでは、各グループにモデルを定義することによって、これらのグループに共通な特性を定義することができ、個々のオブジェクトはこのように定義されたモデルを参照することにより、簡単に定義できるようになります。
モデル定義を使用するかどうかは開発者の設計次第ですが、使用するとプロジェクトの開発や管理に便利です。[モデル]リポジトリを使用すると、次のような利点があります。
プロジェクト開発に要する時間を節約できます。
オブジェクトモデルを作成すると、同様の特性を持つオブジェクトはそのモデルを参照するだけで定義でき、個々のオブジェクトごとにいちいち同じ特性値を設定する必要がなくなります。
管理が容易になります。
モデルの特性値を変更すると、そのモデルに関連する全てのオブジェクトの特性値に自動的に継承されます。
項目モデルを使用することでさまざまなテーブルやプログラムの変数・パラメータなどで特性を一致させることができます。
カラムをリンク定義する場合などには、両カラムの属性が正確に一致していなければなりませんが、同じモデルを使用してカラムを定義すると簡単に実現することができます。
例
項目モデル
Customer_Codeオブジェクトがプロジェクト内で頻繁に使用されると仮定します。型特性(数値)と書式特性(9桁)などの特性値を[モデル]リポジトリに設定することで、プロジェクトに内でこのモデルを使用することができます。さらに、オブジェクトの書式(例えば9桁から10桁へ)を修正する必要がある場合、[モデル]リポジトリで変更するだけで該当するオブジェクトの書式にすべて反映されます。
フォームモデル
プロジェクト内のフォームのすべてが均一で、[背景]特性にイメージが定義されているものと仮定します。この特性をフォームを新規に作成するたびに設定することは時間の無駄遣いになります。モデルを使用してこれらの特性を継承させることで、どのようなイメージで表示させるかを考える必要がなくなります。さらに、特性を変更する必要が発生した場合も、モデルの特性値を変更することで簡単に反映させることができます。