在.NET(Winforms,WPF,ASP.NET)上创建更大规模的企业级应用程序时,我看到两个主要的"思想流派".
有些人使用"存储库模式",它使用知道如何获取,插入,更新和删除对象的存储库.这些对象相当"愚蠢",因为它们不一定包含大量逻辑 - 例如,它们或多或少是数据传输对象.
另一个阵营使用我所谓的"智能"业务对象,它们知道如何加载自己,并且它们通常具有Save(),可能是Update()甚至Delete()方法.在这里,你真的不需要任何存储库 - 对象本身知道如何加载和保存自己.
最大的问题是:你使用或更喜欢哪种?为什么?
您是否在所有应用中使用相同的方法,或者您在选择一种方法时是否有任何特定标准?如果是的话 - 这些标准是什么?
我不是想在这里开始一场火焰战 - 只是试图找出每个人对此的看法以及你的观点是什么,以及为什么你使用一种(或两种)模式而不是另一种.
感谢任何建设性的意见!