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