.net 网络:商业实体?

.net 网络:商业实体?,.net,business-objects,architecture,.net,Business Objects,Architecture,大家好 我想知道,当作为软件架构师设计业务实体时,我们需要考虑什么 非常感谢您提供的任何参考或帮助。这是一个非常广泛的问题,但我认为您必须了解的一些高级主题包括:- 并发-对象将如何处理它 业务对象的缓存及其实现方式。 业务对象的持久性/检索 -如果您使用了ORM,您将使用ORM-决定什么ORM最适合您 你的需要 业务规则验证及其工作方式 亲子关系管理 N级撤消 数据绑定支持 交易支持 业务对象的序列化 对象的克隆(深度复制)等实用程序 P>此外,将根据您的要求最好的来考虑各种模式。 他们将有

大家好 我想知道,当作为软件架构师设计业务实体时,我们需要考虑什么


非常感谢您提供的任何参考或帮助。

这是一个非常广泛的问题,但我认为您必须了解的一些高级主题包括:-

  • 并发-对象将如何处理它
  • 业务对象的缓存及其实现方式。
  • 业务对象的持久性/检索 -如果您使用了ORM,您将使用ORM-决定什么ORM最适合您 你的需要
  • 业务规则验证及其工作方式
  • 亲子关系管理
  • N级撤消
  • 数据绑定支持
  • 交易支持
  • 业务对象的序列化
  • 对象的克隆(深度复制)等实用程序

    <> P>此外,将根据您的要求最好的

    来考虑各种模式。
  • 他们将有什么样的责任模式。专家业务对象
  • 对象是否会合并诸如延迟加载数据之类的模式
  • 我认为最好以探索一些或业务对象框架作为起点


    这将为您提供一个相当公平的起点,甚至可以帮助您决定这些框架是否满足您的特定需求或您需要其他东西。

    这是一个非常广泛的问题,但我认为您必须了解的一些高级主题包括:-

  • 并发-对象将如何处理它
  • 业务对象的缓存及其实现方式。
  • 业务对象的持久性/检索 -如果您使用了ORM,您将使用ORM-决定什么ORM最适合您 你的需要
  • 业务规则验证及其工作方式
  • 亲子关系管理
  • N级撤消
  • 数据绑定支持
  • 交易支持
  • 业务对象的序列化
  • 对象的克隆(深度复制)等实用程序

    <> P>此外,将根据您的要求最好的

    来考虑各种模式。
  • 他们将有什么样的责任模式。专家业务对象
  • 对象是否会合并诸如延迟加载数据之类的模式
  • 我认为最好以探索一些或业务对象框架作为起点


    这应该为您提供一个相当公平的起点,甚至可以帮助您决定这些框架是满足您的特定需求还是您需要其他东西。

    @理智地说,这是一个问题:与业务对象相比,并发性等方面对解决方案来说不是更重要吗?@Adrian K-我认为在某些情况下,并发方面可能仅限于业务对象本身。然而,这在很大程度上取决于业务对象的总体设计+职责。@Adrian K-根据我的经验,如果您遵循类似专家模式的模式,其中业务对象本身拥有与自身相关的一切,然后,知道它过时,然后提出转发/采取行动(可能重新加载自己,然后填充更新的数据,只要没有冲突+保存数据)的责任也可以作为业务对象本身的一部分。正是从这个方面,我认为并发检测,更重要的是,如何响应它,也可以是业务对象的一部分。design@In理智-谢谢,非常有帮助。那么,我唯一的另一个问题是:您将如何构造业务对象可能用于完成这些任务的常见任务/功能?我假设您会将真正的通用内容分发给共享帮助器类?@Adrian K-是的。业务对象通常会使用提供特定功能的其他类。一个非常基本的示例是电子邮件,它可以通过电子邮件管理器类进行处理。这将产生一堆“技术对象类”(如果我可以这样称呼的话),每个类都执行特定的技术任务来支持“核心业务类”@这对您来说是个问题:与业务对象相比,并发性这样的方面对解决方案来说不是更大的问题吗?@Adrian K-我认为在某些情况下,并发方面可能仅限于业务对象本身。然而,这在很大程度上取决于业务对象的总体设计+职责。@Adrian K-根据我的经验,如果您遵循类似专家模式的模式,其中业务对象本身拥有与自身相关的一切,然后,知道它过时,然后提出转发/采取行动(可能重新加载自己,然后填充更新的数据,只要没有冲突+保存数据)的责任也可以作为业务对象本身的一部分。正是从这个方面,我认为并发检测,更重要的是,如何响应它,也可以是业务对象的一部分。design@In理智-谢谢,非常有帮助。那么,我唯一的另一个问题是:您将如何构造业务对象可能用于完成这些任务的常见任务/功能?我假设您会将真正的通用内容分发给共享帮助器类?@Adrian K-是的。业务对象通常会使用提供特定功能的其他类。一个非常基本的示例是电子邮件,它可以通过电子邮件管理器类进行处理。这将产生一组“技术对象类”(如果我可以这样称呼的话),每个类都执行支持“核心业务类”的特定技术任务