在 .Net 中,我不使用匈牙利命名法(str、int 前缀),但在 VBA 中,我仍然发现它很有用,因为在那里更难看到类型。
这样做是不好的吗?是不必要的吗?也许我漏掉了什么。
我非常感谢任何反馈。我已经思考了一段时间。
谢谢大家。
在 .Net 中,我不使用匈牙利命名法(str、int 前缀),但在 VBA 中,我仍然发现它很有用,因为在那里更难看到类型。
这样做是不好的吗?是不必要的吗?也许我漏掉了什么。
我非常感谢任何反馈。我已经思考了一段时间。
谢谢大家。
name
永远不会是整数,count
也绝对不会是字符串。 - Earlzf_dwX
(对象字段双字类型x
)改为x_coord
;变量的目的比其类型更重要,也更稳定。 - Donal Fellows我总是在VBA中使用一个或两个字母的前缀。我敢肯定我是唯一一个愿意承认这点的人,但我想有人需要与众不同。
我的VBA代码大约有1800万行,其中我合作完成了大约1000行。如果没有其他人会看到我的代码,那么我可以自由地使用我喜欢的惯例。但是如果其他人将要处理你的代码,你应该达成共识并统一惯例。
我喜欢这样做是因为它让我变量名更简短。我可以使用FileNumber和FileName,也可以使用lFile和sFile。我认为读者对这两种方式都不会感到困难。这还帮助我使用保留字作为变量。如果我想把Replace作为变量名,我不能这么做。但是我可以使用sReplace或lReplace。
如果您公司的样式是使用匈牙利命名法,那么使用它就没有问题 - 政策就是政策。有很多工具可以帮助强制执行编码命名惯例(例如 C# 的 Stylecop),所以如果允许的话,您可以继续前进。
基本上,拥有标准是个好主意 - 但这些标准取决于您所在的公司。如果您有一些权力,可以尝试推行微软当前推广的标准 - 但是如果您有大量遗留代码,这将涉及到大量昂贵的重构,而且收益有限。
我建议您在新项目中摒弃匈牙利命名法(可能通过使用代码分析工具),但对于旧代码要保持实用主义。