【问题标题】:How should business level objects be named?业务级对象应该如何命名?
【发布时间】:2010-10-17 21:07:17
【问题描述】:

我们正在构建一个面向服务的系统,我们将应用程序分成几个层:

  1. SOAP Web 服务(例如 BuildingService.asmx)
  2. 业务逻辑层(例如 BuildingXXX)
  3. 数据访问层(例如 BuildingProvider)
  4. 类型(例如,建筑)

SOAP Web 服务只是从业务逻辑层实例化一个 BuildingXXX 类型的对象,以便将实现排除在 SOAP Web 服务之外。 BuildingXXX 然后使用来自数据访问层的 BuildingProvider 来返回在数据传输对象层中定义的类型。

我们一直无法确定我们应该在业务逻辑层中调用什么对象。

命名这些业务级实体的“标准”命名约定是什么?

【问题讨论】:

    标签: naming-conventions business-logic


    【解决方案1】:

    就个人而言,我会将您的业务逻辑层服务称为“BuildingService”,然后将 Web 服务称为“BuildingWebService”。

    或者,对于服务层,您也可以始终使用通用的“BuildingManager”。

    【讨论】:

    • 这似乎也最接近我们的想法,我们甚至在帖子之前提到了 BuildingManager。不过我们不考虑它,因为我们最终可能会有一个 Manager 实体,而 ManagerManager 看起来有点奇怪。最终,我们选择了 BuildingController。
    【解决方案2】:

    命名空间是你的朋友。 BusinessLayer.Building、BusinessLayer.Facility 怎么样?使用 DataLayer.Building、DataLayer.Facility 等。您可以将事物称为它们的本来面目,但它们却是不同的事物。

    【讨论】:

    • @Downvoter:请给出拒绝投票的原因,以便改进答案。
    【解决方案3】:

    我会天真地使用 BuildingRules(因为它们就是这样,对吗?)但是我实际上并不知道什么是约定...

    【讨论】:

      【解决方案4】:

      我更喜欢前缀而不是后缀,以便相关层排序在一起,例如

      BizRuleBuilding,
      BizRuleFacility,
      ...
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-07
        • 2011-04-14
        • 2011-01-23
        • 2012-11-16
        相关资源
        最近更新 更多