命名空间和类的命名标准?

时间:2012-11-23 09:11:41

标签: c# .net naming-conventions

在以下情况中:

我有一组项目是应用程序的插件。每个插件都有3个名称空间:

  1. 通用
  2. 实时
  3. 历史
  4. 在每个命名空间中都有一个名为Settings的类。

    第一个问题:你如何命名这个类,只是设置或CommonSettings,RealTimeSettings,HistoricalSettings?

    在Common命名空间内有一个名为DecisionEngine的类。该类使用另外3个clases,DecisionEngineData,DecisionEngineState和DecisionEngineDataSource。

    第二个问题:你会留下名字吗?或者你会试图找到一种方法来避免在所有类上都有DecisionEngine前缀?

2 个答案:

答案 0 :(得分:4)

我认为保持名字长而清晰是个好习惯,所以我会留下CommonSettings,RealTimeSettings,HistoricalSettings,DecisionEngineData,DecisionEngineState和DecisionEngineDataSource。

C#的用处是命名空间通常不是代码的一部分。通常,您只需将using RealTime放在文件的顶部,然后在代码中使用RealTimeSettings即可。如果类的名称是Settings,则代码的可读性会降低,因为您必须将鼠标悬停在类名上才能了解它所属的命名空间。

答案 1 :(得分:3)

我经常为这些命名问题感到痛苦。但是,在实际使用中,我经常发现较长的类名实际上使真正的代码更具可读性。当你最终得到很多只被称为“设置”的类时,你必须不断检查它所属的命名空间 - 或者你必须完全限定名称。

所以我认为你应该保留你已经使用过的名字。

但实际上,这是一个普世的事情。 :)