1

我正在构建一个 CMS,并且我和其他相关开发人员就类的命名约定进行了辩论。这个问题特别出现在“页面”上,因为它是典型库中可用的公共类。

一个自然的反应是称它为 MVCMSPage(其中 MVCMS 是 cms 的未来名称)或依赖于通过 dll 引用类(想不出 atm 一词..),但两者似乎都有对他们来说有点代码味道。

你有什么建议?

谢谢

4

5 回答 5

4

我会选择' '以外的东西Page。.NET 中内置的“ Page”类是一个非常通用的类,通常被称为 ASP.NET 的一部分。您很容易混淆其他开发人员(甚至您自己,如果您暂时不看它,几个月后)。

我通常使用命名约定,例如:

ApplicationName + "Page"

我还喜欢遵循 ​​MS .NET 命名准则,即仅将超过 2 个字符的首字母缩写词的首字母大写。由于MVCMS如果读取不正确,' ' 可能会与 'MVC' 架构风格混淆,所以我不会使用 ' MvcmsPage' 或 ' MVCmsPage',我会这样称呼它:

MvCmsPage

这是描述性的并且相当容易阅读和理解。

当然,这真的取决于你。主要是偏好问题。只是不要使用' Page',因为它会让一些开发者生气(比如我自己)。

于 2008-12-27T22:52:51.823 回答
3

我认为您要查找的术语是namespace.

对于 System.Web 空间中的这样一个基本类,我认为我不会依赖命名空间区分。如果您正在编写基于控制台的通知机制,那么它可能没问题,但由于您在网络领域工作,我会避免它。我的投票是使用命名空间作为主要区别并将其命名为简单的名称,就像ContentPage这样您将拥有类似类MvcCms.Web.ContentPage的全名。

如果你这样做,你可以导入你的命名空间,System.Web并且仍然能够区分这些类,并且你有一个有意义的短名称,使用或引用也不麻烦(谈到它时)。

于 2008-12-27T23:03:15.593 回答
1

对我来说,由于您正在开发 CMS,因此根目录下的对象就是内容。所以无论是 MvCmsContent、CmsContent 还是只是 Content 对我来说都很好。命名不是项目中最难的部分吗?

于 2008-12-28T00:03:33.083 回答
1

我们遇到了类似的问题,只是使用了 CMSPage。它比 MVCMSPage 稍微简单一些,但显然仍然是 CMS,如果需要,您可以在未来进一步扩展该类以用于多个系统。

于 2009-01-26T17:01:59.870 回答
0

我认为您所指的“页面”相当于应用程序的数据库记录。正如其他人所说,这是一个相当负荷的术语。这里有一些随机的想法:

  • 节点
  • 看法
  • 页面记录
  • CMS页面
  • 网络文档
  • 内容页

你的选择应该尽量传达对象类型的本质。我会避免将产品名称放入类名中。我更喜欢命名空间。

于 2009-01-26T17:21:52.233 回答