3

私たちのほとんどは、ある時点でこれに対処しなければならないと思うので、質問したいと思いました.

BLL に多くのコレクションがあり、同じ古いインライン (匿名) 述語を何度も書いていることがわかった場合、明らかにカプセル化のケースがありますが、それを達成するための最良の方法は何ですか?

私が現在取り組んでいるプロジェクトは、昔ながらの、すべてに答える、静的クラスのアプローチ (たとえば、User クラスと静的 UserPredicates クラス) を採用していますが、それはやや手間がかかり、少し面倒に思えます。

私は主に C# で作業しているので、そのコンテキストを維持することが最も役立ちますが、これは他の言語について聞くのに十分な一般的な質問だと思います。

また、LINQ と Lambda の出現により、これを実現する方法に違いがあると予想されるので、.Net2.0 と 3.0/3.5 の両方のスタイルでこれを行う方法を知りたいと思います。

前もって感謝します。

4

2 に答える 2

2

仕様パターンはチェックする価値があるかもしれません。
いくつかのポリモーフィズムとジェネリックの使用により、動作するはずです。

于 2009-08-12T10:04:55.433 に答える
1

述語は、本質的に仕様設計パターンの単なる実装です。ドメイン駆動設計で仕様パターンについて読むことができます。

于 2009-08-12T10:05:17.463 に答える