2009-06-24 14 views
1

私は今AppFuseを使ってプロジェクトを作成しています。私は、多くの場合、ユニバーサル・アプローチを使用していることを見つけるAppFuse Generic/Universal DAOとManagerの使用

  1. GenericDao/GenericManagerアプローチ
  2. UniversalDao/UniversalManagerアプローチ

:私はすでにあなたのDAOとマネージャークラスを開発するには、2つの方法があることを承知しています私はすべてのエンティティを管理するために1つのクラスが必要なので、より便利になります。あなたは私が常にデザイン面でこれが非常に悪い選択であるかどうか疑問に思いました。

Generic Variantを好む理由がありますか?そして、一般的には、両方のクラスを自分のアプリケーションに混ぜることをお勧めしますか?

答えて

1

私は個人的な理由のカップルのため、UniversalDao/UniversalManagerを使用して好む:

  • 「ジェネリック」アプローチは、一般的に、より多くの構成が含まれます。あなたはDAOと各エンティティのマネージャを設定する必要があります。中型モデルの場合、これは容認できません。
  • "Generic"アプローチでは、まだ多くのキャストを行う必要があります。 Hibernateでたとえば、あなたは、多くの(だけではなく、1)モデルを管理し、より柔軟なDAOを作成することができるユニバーサルで< MyDomainClass>
  • リストへ>一覧< Objectから、例えば、ダウンキャストの多くを行うことになりますOrder、Items、Categoriesを管理するOrderDAOなどのクラスがあります。

もちろん、2つの方法を混ぜ合わせてはいけません。それは簡単に行うことができますが、どんなプロジェクトでも均一性は素晴らしい徳です;)

関連する問題