VB.NET重构相关内容简述
创始人
2024-06-21 17:20:35
0

VB.NET编程语言中的功能强大,有很多都值得我们去深入研究。能熟练的应用这一编程语言,可以帮助我们大大提高百年城效率。在这里先来了解一下VB.NET重构中的一些基本内容,希望可以给大家带来一些帮助。#t#

大家已经很熟悉C#2005将加入内置的重构支持,方便用户快速对代码实施常用的重构。重构是十分重要的维护代码的手段,不仅C#的用户需要,VB的用户更加需要。因为从VB6升级来的代码,经过升级向导的“蹂躏”后已经面目全非,而且许多旧的代码风格与新的.net特性格格不入。因此,重构成了升级旧代码,改善旧代码的重要手段。可惜的是,除了重命名之外,VB2005并没有加入重构特性,这让VB的程序员十分扫兴。

Refactor!支持VisualStudio2005独特的智能标记,即将VB.NET重构功能置于上下文的智能标记中,而不是在一个“重构”菜单选项中提供选择。这样用户更容易知道在当前的代码上可进行什么样的操作,而不是从一堆不知所措的重构名字中选取。这类智能标记通常要等用户将输入光标置于可重构的对象上才会出现,如子程序或函数名称、变量名称等等。 

重新排列参数是Refactor!多项重构功能之一,它可以将函数或子程序的参数重新排列。更神奇的是,他可以将按引用传递的参数转化为函数的返回值,或进行相反的操作。比如有这样一个子程序:

  1. Public Sub Sub1(ByVal a As Integer, ByVal b As String)  
  2. '调用方  
  3. Call Sub1(10, "str") 

 

通过“重新排列参数”可以将上述程序重构成: 软件开发网

 

  1. Public Sub Sub1(ByVal b As String, ByVal a As Integer)  
  2. '调用方  
  3. Call Sub1("str", 10) 

 

再比如有这样的子程序:

 

 

  1. Public Sub Sub2(ByRef x As Integer)  
  2. '调用方  
  3. Dim i As Integer  
  4. Call Sub2(i) 

 

同过“重新排列参数”可以将按引用传递的参数移出而变成返回值:

 

  1. Public Function Sub2()As Integer  
  2. '调用方  
  3. Dim i As Integer  
  4. i = Sub2() 

 

还可以进行相反的VB.NET重构,将函数的返回值变成按引用传递的参数。有许多VB程序员习惯用参数传出所需要的参数。现在你可以用这个重构功能项,将合适的子程序转变成函数,或进行相反的操作。#t#

进行这项操作的步骤是:

1、先保存和编译项目。

2、将光标放在函数的定义上,点击出现的智能标记,并选择“ReorderParameters”。

3、按Tab键,选择要移动的参数或返回值,然后按左右方向键移动这个参数,到合适的位置。

4、按Enter键确定修改,接下来根据提示将函数所有的调用处更改为新的签名。

5、根据需要,进行RenameLocal重构,将此重构引入的变量名更改为适当的名字。

下面的程序演示了“重新排列参数”重构进行的过程,交换参数的视觉效果确实很酷!

重命名本地变量是另一项非常有用的功能。实际上VB2005已经内含安全的重命名功能,但重命名本地变量功能可以将重命名的范围限定在当前的函数或子程序中,同时明显的视觉效果可以让你对被重命名的变量一目了然。操作步骤是:

1、选择要重命名的符号,单击智能标记并选择“RenameLocal”。

2、在绿色的可替换区域内输入新的名称,按Tab键可在所有出现该名称的区域间跳转,可借此观察此项VB.NET重构的影响范围。

3、确定后,按下Enter键。很简单。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...