在VB.NET中直接调用模块函数是一种好习惯吗?

时间:2010-04-29 14:36:44

标签: vb.net module function-calls

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

3 个答案:

答案 0 :(得分:2)

Intellisense(以及“Goto Definition”)应该能够轻松找到事物的位置,但我总是在调用时使用更好的命名空间,只是为了清晰阅读。然后很明显它是一个自定义函数,而不是你正在使用的类内置或本地的东西。

也许我缺少一个细微的差别,但我倾向于使用共享类而不是模块来处理任何常见且自包含的代码 - 它似乎更容易为我跟踪,它也会强制执行它的前置规则,因为你无法从任何地方调用它而不给出命名空间来调用它。

答案 1 :(得分:1)

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

Call MyNameSpace.Utils.MySharedFunction()

答案 2 :(得分:1)

Util就是这样一个通用名称。

.Net框架的示例。你有System.Web.HttpUtility.UrlEncode(...)。通常您将此引用为HttpUtility.UrlEncode,因为您在顶部有一个import语句。

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

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