2010-06-29 88 views
1

我正在使用一个UI,其中显示对象的顶级逻辑分组是二维或三维(各种对象可以显示两个三维或三维)。二维和三维分组对象的变量/函数命名

我选择的语言不允许数字字符是标识符的第一个字符(实际上并没有意识到),所以我正在寻找一个清晰易读的前缀来使用。我已经想到了:

  • DDD(例如DddObject或DdObject)
  • ThreeD(例如ThreeDObject或TwoDObject)

但是这两个选项看起来丑陋而怪我。有没有人想出一个更聪明的替代二维和三维对象命名?

+1

D3如果您想要前缀。或者使用“3D”后缀(doSomething3D)。或者(甚至更好)将所有方法放入单独的名称空间或类中。 – SigTerm 2010-06-29 17:04:14

回答

1

我曾经使用'TD'(对于3D),但这不是很直观。我想你应该在需要时使用3D或2D后缀,正如上面的SigTerm所建议的,例如Point2D和Point3D。在其他情况下,如TriMesh(很明显该对象是3D),不需要前缀或后缀。

我个人发现尽量避免前缀和后缀。这不仅可以为您节省一些打字工作,而且代码也变得更具可读性。当然,公约也将取决于上下文。例如,如果您有一个可以同时容纳二维和三维对象的场景对象,则只需将其命名为“场景”即可。但是,您的问题可能会决定2D和3D场景有两个单独的结构,在这种情况下,您可能想要命名为“Scene2D”和“Scene3D”。

从长远来看,使用更抽象的东西并不好,因为没有办法可以将选择背后的逻辑充分传达给其他人,随着时间的推移,它会越来越容易被误解。例如,某人可能最终会添加一个名为Loggin3D的类,用于记录错误:)