我想要你的意见,在一个特定的情况下,请。这是关于业务层与帮助对象--我不是寻找理想的模式,而仅仅是一个很好的理解什么,我亲爱的编程的同事思考这个:

在我的当前应用程序,我有一个全领域模型(皇宫Sql,非常轻的仓库,然后使用扩展方法的跨IQueryable<>过滤/排序以根据业务要求),然后服务层,其中包含服务的基础上分组的职责,例如IRegistrationService(注册用户,用户查询的登录名称等)。

现在的警告。我也有一些"辅助"类做的事情一样的加密,我也塞入其他无ungroupable要素在于,目录(例如定义枚举等等。)

我需要建立一个新的类现在将处理的产生定制的链接我的应用程序,这是勉强超过字符串。格式与不同的对象,把他们的属性考虑在内。内部运作是无关紧要的。然而,我有一个很难的实例,某种"LinkService"现在就这样做-我觉得我要结束了100服务(和他们的接口+执行情况)的时候我就完了。

在同一时间,我不觉得我想要创建一些混合的课程和其他东西在我的"助手"namespace/目录(例如LinkManager).

做什么?在你们把东西,仍然有些业务层级,但在同一时间怎么你的数量限制的项目在业务/业务层?在你棍子的所有那些小小的帮助类别,例如中间物体简化和管理会访问(我认为你希望有这种强烈的类型-至少我是这样)?

让我知道你在想什么?谢谢!

有帮助吗?

解决方案

我说,用正确的工具的工作是关键。如果你需要一些类型的设施产生的链接,这基本上是一个射的实体属性的格式弦,然后编写的设施做到这一点。它不必是一个服务...相反,有一个完全成熟的服务,为东西一样,是可能大材小用。然而,我不会只是肿块,这为你一般的"助手".这听起来像这样的东西,都有一个特定的目的和意图,用一种特定的行为。因此,把它放在一个位置适当地适用于这种行为即使这是一个新的项目。

我尝试不要有一个巨大的肿块的"一般"的代码在我的应用。一切都有目的和实现特定的行为。有时,目的及行为是高度重复使用,但我还是试图组织这些可重复使用的元素,我域的逻辑。从一个较高的水平,我看到我的大多数应用程序分为以下几种:

  1. 客户
  2. API/服务
  3. 数据访问(可选)
  4. 框架

很多这样的可重复使用的功能落在排序的一个幽冥之间的区域框架和领域。它的一部分可能存在一些基类和/或接口,并支助类型的框架,与其他的一半,具体实施中,居住在我的领域。它有时候似乎很奇怪,但是组织这种方式帮助我让我域尽可能的干净(专用于商业企业),同时仍然允许我抽象的共同的和可重复使用的概念纳入较低的水平"框架"的类型。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top