我刚刚开始了一项严格的内部代码标准的新工作。其中一个,我之前在Javascript中见过很多次,是使用_
作为对象属性的前缀,不应该从该对象外部访问。
我的事实上的个人编码标准倾向于使用很多函数和原语,当我用方法公开一个对象时,这些通常是语法糖,通用插件的别名可以重复使用:我倾向于保持一切都非常紧密-scoped使得每个函数具有不同的目的,并且仅给出它所需的数据。因此,在任何给定的范围内,只暴露最低限度,默认情况下一切都是私有的。
下划线 - 前缀属性约定与我在其他两个大约会中密切相关(我认为),一个是匈牙利符号,另一个是使用所有的单片神对象必须加入。因此,从文化角度来看,我可以看到_
如何适应
编码标准是在一个基座上进行的,但是它们已被接收,因此这里没有人可以充分解释它们的用途或原因。我的愤世嫉俗的观点是,在最早的实例中,开发人员要么认为不适合实现通用的,解耦的代码,要么不知道如何封装在JS中,后来匈牙利语符号被开发为允许一定的一致性,同时有效地拥有为了补充本质上危险的代码架构的人类认知努力。
任何人都可以给我一个不那么愤世嫉俗的解释暴露但_
- 前缀属性的价值吗?
答案 0 :(得分:0)
使用_前缀(有时也是m_)的一个原因是区分一方的实例变量和另一方的局部变量和参数,因此它们不能混淆,特别是如果它们具有相同的名称。 另一个原因是要区分非公共实例变量和公开可见属性,这些属性由实例变量备份,因此应具有相同的名称。在像VB.NET这样的语言中,这种区别不能通过大小写来实现,因此添加了一个前缀。