在以下情况中:
我有一组项目是应用程序的插件。每个插件都有3个名称空间:
在每个命名空间中都有一个名为Settings的类。
第一个问题:你如何命名这个类,只是设置或CommonSettings,RealTimeSettings,HistoricalSettings?
在Common命名空间内有一个名为DecisionEngine的类。该类使用另外3个clases,DecisionEngineData,DecisionEngineState和DecisionEngineDataSource。
第二个问题:你会留下名字吗?或者你会试图找到一种方法来避免在所有类上都有DecisionEngine前缀?
答案 0 :(得分:4)
我认为保持名字长而清晰是个好习惯,所以我会留下CommonSettings,RealTimeSettings,HistoricalSettings,DecisionEngineData,DecisionEngineState和DecisionEngineDataSource。
C#的用处是命名空间通常不是代码的一部分。通常,您只需将using RealTime
放在文件的顶部,然后在代码中使用RealTimeSettings
即可。如果类的名称是Settings
,则代码的可读性会降低,因为您必须将鼠标悬停在类名上才能了解它所属的命名空间。
答案 1 :(得分:3)
我经常为这些命名问题感到痛苦。但是,在实际使用中,我经常发现较长的类名实际上使真正的代码更具可读性。当你最终得到很多只被称为“设置”的类时,你必须不断检查它所属的命名空间 - 或者你必须完全限定名称。
所以我认为你应该保留你已经使用过的名字。
但实际上,这是一个普世的事情。 :)