3

我的 VB.NET 程序中有一个Util模块,它具有项目范围的方法,例如日志记录和属性解析。我工作的一般做法似乎是直接调用这些方法而不用前缀Util。当我刚接触 VB 时,我花了一段时间才弄清楚这些方法/函数的来源。当我现在使用自己的Util方法时,我不禁想到Util.在每个方法调用之前添加它会更清晰,更容易理解(您立即知道它是用户定义的但不在当前类中,以及在哪里可以找到它) ,并且几乎没有更长的时间。调用 VB 模块的过程/函数时的一般做法是什么?我们是否应该在它们前面加上模块名称?

4

3 回答 3

2

Intellisense(和“Goto 定义”)应该使查找事物所在的位置变得微不足道,但我总是在调用前使用更好的命名空间,只是为了便于阅读。然后很明显它是一个自定义函数,而不是你正在使用的类的内置或本地函数。

也许我遗漏了一个细微的区别,但是对于任何常见且自包含的代码,我倾向于使用共享类而不是模块-这对我来说似乎更容易跟踪,而且它还会强制执行您的前缀规则它,因为你不能只是从任何地方调用它而不给它一个命名空间来调用它。

于 2010-04-29T14:41:40.147 回答
1

为了便于阅读,我通常将完整的命名空间用于共享函数。

Call MyNameSpace.Utils.MySharedFunction()
于 2010-04-29T14:45:37.157 回答
1

Util 是一个通用名称。

来自 .Net 框架的示例。你有System.Web.HttpUtility.UrlEncode(...). 通常您将其称为HttpUtility.UrlEncode因为您在顶部有一个 import 语句。

具有静态实用方法的类的名称应该是可读和可解释的。这是很好的做法。如果你有好的类名,它们也可以驻留在 Utils 命名空间中,但类名不应该是Utils.

将所有日志记录放在一个Logger类中。你所有的字符串都在一个StringUtils类等中。并尽量保持类名尽可能具体,我宁愿有更多的类,而不是相反的方法。

于 2010-04-29T14:46:42.383 回答