80% が複雑なビジネス ロジックで 20% が CRUD である、またはその逆のアプリケーションがあるとします。
過去に、私はある種のコマンドパターンを使用し、ComplexFooCMD
orのようなクラスを持っていましEvenMoreComplexBarCMD
たが、常にInsertFoo
、UpdateFoo
、DeleteFoo
およびSelectFoosCMD
いくつかのUpdateSomeValuesOfFoo
orで終わりましたSelectSomeFoos
。これらはすべてBLLに住んでいました。
最近、あまり複雑でないビジネス ロジック アプリケーションで、次のようなクラスを持つサービス パターンを使用しましたFooService
が、これらには期待されるinsertFoo
、 、updateFoo
も含まれていselectSomeFoo
ます。すべてのサービスでこれらのメソッドを使用したり、これらのメソッドをプレゼンテーション層に公開するためだけに存在するサービスを使用したりすることは、大量のボイラー プレート コードのように感じられます。
CRUD 部分とアプリケーションの残りの部分の両方に適合するパターンはありますか?それとも、アプリケーションのさまざまな部分に異なるパターンを使用する必要がありますか?