【问题标题】:File naming convention for layers图层的文件命名约定
【发布时间】:2014-01-21 22:25:06
【问题描述】:

我已将我的 .NET 项目拆分为三个不同的层,即外观层、业务层和数据访问层。

我正在为这些图层的文件名寻找正确的命名约定。例如,如果我的项目中有与帐户相关的功能,我目前在外观层中有“AccountsFAC.cs”和类名 AccountsFAC,在业务层中有 AccountsBL.cs 和类名 AccountsBL,在 DAL 层中有 AccountsDAL.cs 和 AccountsDAL 类名.

我想知道这是否是在不同层中命名文件的正确方法。

稍后添加

建议 #1

以下 Robert Koritnik 给出的建议之一是使用描述性名称,例如“AccountStore”和“AccountService”

【问题讨论】:

  • Robert Koritnik 给出的以下建议之一是使用描述性名称,例如“AccountStore”和“AccountService”

标签: architecture


【解决方案1】:

我可能不会在实际的类名中包含层缩写。我会将类划分为适当的库和命名空间,以便命名空间表示层,而不是类名。

这些都是糟糕的例子,你应该选择更有意义的命名空间,但更像这样:

  • MyCompany.Whatever.Data.Accounts
  • MyCompany.Whatever.Business.Accounts
  • MyCompany.Whatever.Facade.Accounts

【讨论】:

  • 是的。但是要消除具有相同类名的歧义,请使用诸如 AccountService 用于业务流程类、AccountStore 用于数据层和 Account 类用于 POCO 类。
  • 好点,使用更具描述性的词而不是层级缩写会很好。你应该把它作为答案,我会投票!
  • 我觉得使用像 AccountStore 这样的描述性名称更有意义,因为正如 Robert 所建议的那样,它消除了歧义。消除歧义的一种方法是使用命名空间别名。谢谢罗伯特
【解决方案2】:

另一种方法是使用不同的命名空间来分隔您的层;例如

命名空间 Project.Accounts.Facade

命名空间 Project.Accounts.Business

命名空间 Project.Accounts.DataAccess

但我认为最重要的是一致性;只要您在整个项目中使用相同的约定,并且它是合乎逻辑的,那么您使用的约定并不重要。

【讨论】:

    猜你喜欢
    • 2011-08-08
    • 2012-12-24
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 2021-04-13
    • 2017-12-26
    • 2011-07-31
    • 1970-01-01
    相关资源
    最近更新 更多