【发布时间】:2010-10-09 02:59:40
【问题描述】:
我经常处于这样一种情况,即我有一个由接口或类表示的概念,然后我有一系列扩展它的子类/子接口。
例如: 一个通用的“DoiGraphNode” 代表资源的“DoiGraphNode” 代表 Java 资源的“DoiGraphNode” 具有关联路径等的“DoiGraphNode”等。
我能想到三种命名约定,希望 cmets 知道如何选择。
选项 1:始终以概念名称开头。
如:DoiGraphNode、DoiGraphNodeResource、DoiGraphNodeJavaResource、DoiGraphNodeWithPath 等
专业人士:很清楚我在处理什么,很容易看到我拥有的所有选项
Con:不是很自然吗?一切看起来都一样?
选项 2:把特殊的东西放在开头。
因此:DoiGraphNode、ResourceDoiGraphNode、JavaResourceDoiGraphNode、PathBaseDoiGraphNode、 等等等等。
亲:看代码就很清楚了
缺点:找到它可能很困难,特别是如果我不记得名字,缺乏视觉一致性
选项 3:放置特殊内容并删除一些多余的文本
因此:DoiGraphNode、ResourceNode、JavaResourceNode、GraphNodeWithPath
专业人士:写和读的东西不多 缺点:貌似cr*p,很不一致,可能和其他名字冲突
【问题讨论】: