2010-12-02 226 views
-1

这不是关于意见的问题,而是关于选择合适的上下文名称的优点。我不认为这是可能的重复,因为重点不在于约定。 (重新打开)

我的同事想要根据类型信息和类别等因素命名事物来分类名称,我完全不同意并且认为变量,对象和类型(类)应该有简短的描述性名称,而不是重申形式语法。命名约定

例如

  • 只要有可能,我会尝试用简单的英文选择最有意义的名称。
  • 我喜欢PersonFilterFilterPerson当它是一个类型(类),但如果它是一个动作(函数或方法)
  • 我不想前缀我的上下文信息,如P代表参数变量,或_会员变量(字段)
  • 我永远不会在我的变量中包含类型信息,例如tbFirstName(TextBox firstName)类型是由它的声明给出的,而不是名称。
  • 我绝不会跟一些任意的名字前缀我的变量,因为我想将它们组合在一起,紧贴在智能感知(自动完成)窗口

我在这种情况下,用C#主要工作,并了解其他语言如果不能从静态类型中获益,可能会有其他问题,但是,我认为IDE(Visual Studio)的支持使得很多旧的约定变得没有必要,而且很简单。

要清楚地知道,静态语言在编译时有很多可用的类型信息,这使得基于类型冗余的前缀成为可能。迄今为止,微软在Visual Studio中使用的IntelliSense引擎做得很好,但它可以做得更好。 (当运行时解析类型时,这是不可能的,但是,假设不同的命名约定适用于静态和动态类型的语言是很自然的,但是,我可能会认为应该没有任何区别,只是因为这个事实)

鉴于这个问题的背景下,我们是你不同意或同意,并有这些论据的优点吗?

+0

'受益于静态打字'...你确实意识到这是一个意见问题? – Javier 2010-12-02 13:49:20

+1

除了文本框,按钮等,我几乎完全同意。如果使用前缀,我认为在IntelliSense中查找控件要容易得多。 – neo2862 2010-12-02 13:49:38

回答

-1

我同意你所有的观点,除了第三个观点。我倾向于在每个成员字段宽度m_和每个静态成员字段前加上s_。快速查看代码时,对我来说有很大的不同。