ウェブで見つかった例について少し混乱しています - spring & hibernate(ポイント4. Model & BO & DAO
) Model、DAO、BOのクラス(+ DAOとBOのインタフェース)があります。私が明確に理解していないのは、DAOとBOがまったく同じ機能を共有している場合、DAOとBOが別々のクラスに分かれている点です(違いはBOにDAOセッターがあることです)。少なくとも、(DAO&BO(データアクセス層) - アーキテクチャ
プロジェクト構造に混乱を避けるために、明確に
を層を識別するのに有用であるが、私には設計上-ようだ:
著者はパターンがあること、のみを説明しますこの場合)。私はこの例がとてもシンプルであることを知っていますが、このクラスの分離は何のために役立つでしょうか?誰かが例を挙げることができますか?
:
古典的な例は、送金サービスです。 –
DAOが分離されていない場合、BO(サービス)がDAOを再利用することは困難です。基本的なDBまたはORMフレームワークを変更した場合、DAOの実装部分だけが変更を必要とするため、影響を受けていないBOには影響がないなどの利点もあります。 – techuser