购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.3 Visual Studio 2010新增功能简介

Visual Studio 2010由于使用了WPF和托管代码进行了开发,因此微软在IDE中加入了很多界面美化元素,增加了更多的新功能或者对过去版本的一些功能进行了增强。Visual Studio具有多种版本,在本节的内容中将以Visual Studio 2010的专业版或旗舰版为基础来介绍这个开发环境的一些新增功能及使用特性。

1.3.1 起始页面

Visual Studio的IDE界面与过去的版本区别不大,每次启动时将显示一个开始页和一些可停靠的面板等,主界面如图1.27所示。

img

图1.27 Visual Studio起始页

Visual Studio 2010的起始页中列出了最近的项目列表及微软提供的一些学习资源,这是一个可以定制的页面,当Visual Studio 2010启动的时候,会查找用户目录下的StartPage.xaml文件。如果这个文件存在,就加载这个用户自定义的开始页;如果文件不存在,则使用系统默认的开始页。

注意:如果起始页不可见,可以选择“视图|起始页”菜单项显示起始页。

Visual Studio 2010的一大改进是对多显示器的支持,这样同样的IDE可以在多个显示器中显示不同的部分,以便于程序的开发与调试。

起始页中的最近使用的项目列表包含了最近几次所使用的项目清单,可以直接在起始页上用鼠标右键单击项目列表中的项目,在弹出的快捷菜单中允许用户打开项目或者是项目相关的文件夹,用户也可以使用“从列表中移除”菜单项将项目移除。

1.3.2 增强的多目标支持

Visual Studio 2010同样提供了对多目标的支持,允许直接打开旧的.NET Framework应用程序。在Visual Studio的“新增项目”对话框中,提供了对于多个.NET Framework的版本选择。当选择了某个版本后, Visual Studio将根据版本类型显示可以创建的项目模板,如图1.28所示。

img

图1.28 “新建项目”对话框

Visual Studio 2010的工具箱和属性也会依据选择的目标框架进行过滤,而且Visual Stduio 2010还会试着显示一些基于目标框架的第三方控件。Visual Studio 2010默认使用.NET Framework 4.0,不过同时会根据引用的程序集来模拟以前版本的框架。对于已经存在的项目,还可以通过项目属性来改变目标框架,如图1.29所示。

img

图1.29 更改目标框架

1.3.3 代码编辑器的增强特性

在代码编辑器方面新增了如下几个方面的改进:

1.鼠标滚动缩放代码字体大小

代码编辑器一个显著的改变是,按【Ctrl】键的同进滚动鼠标滚轮,可以调大或调小编辑器中的代码的字体,这对于一些需要经常搞代码演示的程序员来说,非常有用。因为代码编辑器用WPF技术编写,因此这个功能可以很容易地得以实现。

2.代码提示局部匹配

在代码智能提示方面,现在实现了局部的字符串匹配提示,如果输入一个字符build,现在Visual Studio将显示StringBuilder和UrlBuilder等模糊匹配builder的成员,如图1.30所示。

3.高亮代码引用

高亮引用允许程序员快速地导航同一个文件中一个方法的所有的引用位置,比如代码中有一个DataContractJsonSerializer类被使用,要想知道DataContractJsonSerializer还在哪些其他的地方被引用的话,可以双击DataContractJsonSerializer,稍后Visual Studio会高亮显示所有的DataContractJsonSerializer的使用位置,如图1.31所示。

img

图1.30 局部字符串匹配提示图

img

图1.31 高亮代码引用

4.使用代码定位窗口

有时如果程序员要查找特定的代码片断,可以使用Visual Studio的查找或者是在文件中查找来快速地定位目标代码片断,Visual Studio 2010使用代码定位窗口增强了查找功能。可以按【Ctrl+, 】组合键打开代码定位窗口,如图1.32所示。

img

图1.32 使用代码定位窗口

只要在搜索条件中指定要搜索的文本值,Visual Studio将自动列出目标代码位置的详细信息,如所在的文件位置、代码行号等信息。

5.使用盒选功能

盒选是一个非常有用的新特性,允许程序员在多个代码行中完成同样的改变。要使用盒选功能,放置鼠标到想要改变的位置,然后按【Shift+Alt】组合键和小键盘上的方向键来创建一个盒子。在定义了盒状选择区域后,就可以进行多行的代码更改了,如图1.33所示。

6.查看代码调用层次

“调用层次结构”窗口允许程序员查看特定的方法在所有方法中的调用层次,调用层次是递归的。要想打开“调用层次结构”窗口,可以使用右键快捷菜单、属性或者是构造函数的方法,选择“查看调用层次结构”菜单项,Visual Studio将显示图1.34所示的“调用层次结构”窗口。

img

图1.33 使用代码盒选功能

img

图1.34 查看调用层次

在该窗口中,可以很容易地看到方法被调用的位置,以及该方法调用的其他方法的详细信息,便于程序员进行定位。

7.自动代码生成功能

在Visual Studio 2010中如果输入了一个新的方法名但是该方法不存在,那么可以按下【Ctrl+.】组合键,生成方法声明代码。Visual Studio 2010扩展了这个功能,允许创建类、结构、方法和枚举。这是一个非常有用的特性,在使用TDD方式开发一个应用程序时更加方便,如图1.35所示。

生成新类型提供了详细的选项,如是否将类创建在一个单独的文件或者是添加到现有文件,指定访问级别或者是创建类还是枚举等,如图1.36所示。

img

图1.35 使用自动代码生成功能

img

图1.36 “生成新类型”窗口

1.3.4 使用类视图查看器查看类信息

img

图1.37 使用类视图查看类详细信息

类视图使用面向对象的视角用来显示当前项目中的所有的类及这些类中定义的方法或属性等信息,要打开类视图,选择“视图|类视图”菜单项,将弹出图1.37所示的“类视图”窗口。

窗口顶部显示了当前项目,项目引用列出了当前项目的所有引用的程序集,然后是项目命名空间下的所有类列表,在这个列表中可以看到类的基本层次结构,可以在下面看到这个类的属性和方法的详细信息。双击方法或属性, Visual Studio将自动在代码编辑窗口中定位到代码位置。

1.3.5 使用对象浏览器查看对象

Visual Studio 2010也提供了用来查看当前项目中所有引用到程序集的对象浏览器,可以选择主菜单中的“视图|对象浏览器”菜单项打开该窗口,如图1.38所示。如果在定义自己的类时,定义了良好的代码注释,那么在这个窗口的对象或方法的详细信息中将能看到关于类的描述。

img

图1.38 使用对象浏览器查看对象

1.3.6 使用Visual Studio 2010的重构工具

Visual Studio 2010支持代码重构功能,当进入代码编辑窗口时,在Visual Studio 2010中将显示“重构”菜单,如图1.39所示。所谓重构,是指在编写代码后在不更改代码的外部行为的前提下通过更改代码的内部结构来改进代码的过程,目的是提高其可理解性,降低其修改成本。通俗地说,就是程序的功能和结果没有任何变化,重构只是对程序内部结构进行调整,让代码更加容易理解,更容易维护。

img

图1.39 Visual Studio 2010提供重构功能

重构如果不借助外部工具,手工来实现是非常麻烦的,现在多数集成化开发环境都提供了重构的工具,下面介绍一下这些重构项的具体使用方法。

1.重命名

允许重命名整个项目中的一个代码标记,如重命名方法名称、字段名、本地变量等,选择“重构|重命名”菜单项,或者选中要重命名的代码标记,按【F2】键,Visual Studio 2010将弹出图1.40所示的“重命令”窗口。

在“新名称”文本框中输入一个要变更的名称,预览引用更改默认被选中,当单击“确定”按钮后,Visual Studio 2010将弹出一个“预览更改-重命名”窗口,允许查看将要重命名的代码位置,如图1.41所示。单击“应用”按钮后,重命名将应用到项目中所有的代码处。

img

图1.40 “重命名”窗口

img

图1.41 “预览更改-重命名”窗口

2.提取方法

允许基于选择的代码语句来定义一个新的方法,如一些程序员在写代码时写了一个过长的方法,那么基于重构的考虑要将这个方法拆散为几个子方法,那么就可以使用提取方法重构,要使用提取方法重构,选中要提取方法的代码段,然后选择“重构|提取方法”菜单项,或者按【Ctrl+R】组合键再按【Ctrl+M】组合键,Visual Studio 2010将弹出图1.42所示的“提取方法”窗口。在“新方法名称”文本框中指定一个方法名,然后单击“确定”按钮,Visual Studio将会对原先的代码区域变为一个方法调用,并产生一个新的具有指定名称的方法。

img

图1.42 “提取方法”窗口

3.封装字段

将一个公共的public字段使用属性进行封装,使用属性能提供良好的面向对象的封装效果。要使用封装字段,先选中字段,选择“重构|封装字段”菜单项或者按【Ctrl+R】组合键,再按【Ctrl+E】组合键,将弹出图1.43所示的“封装字段”窗口。

在“属性名”文本框中指定要封装的属性名称,当单击“确定”按钮后,Visual Studio将显示“预览引用更改-封装字段”窗口,如图1.44所示。

img

图1.43 “封装字段”窗口

img

图1.44 “预览引用更改-封装字段”窗口

单击“应用”按钮后,可以看到原来的Text字段被ScreenText进行了封装。

img

图1.45 “提取接口”窗口

4.提取接口

接口是一组规则的集合,它规定了实现本接口的类或接口必须拥有的一组规则,克服了类单一继承的缺点。面向对象的编程建议针对接口编程而不是针对具体实现。对于现有的类,可以通过提取接口重构来提取类中的方法为接口。

提取接口提供了一种使用来自现有类、结构或接口的成员创建新接口的简单方法,要使用这种重构,首先在代码编辑器中选中要提取接口的类或者是结构,然后选择主菜中的“重构|提取接口”菜单项,或者是按【Ctrl+R】组合键,再按【Ctrl+I】组合键,显示图1.45所示的“提取接口”窗口。

程序员可以在该对话框中指定新接口的名称,接口将创建在一个单独的文件中,因此要指定新文件名称,该对话框列出了类中定义了所有的方法或属性,允许程序员选择哪一些为公共接口,或者单击“全选”按钮选择所有的类成员,单击“确定”按钮,Visual Studio将产生一根据现有类中的成员提取出来的接口。

5.移除参数

移除参数提供了从方法、索引器或委托中移除参数的简单方法。该操作将更改声明;在调用成员的任何位置,都会将参数移除以反映新声明。

要执行移除参数操作,请首先将光标放在方法、索引器或委托上。当光标处于合适位置时,可以在“重构”菜单中选择该操作,或者按【Ctrl+R】组合键,再按【Ctrl+V】组合键,弹出“移除参数”窗口,如图1.46所示。

在窗口中列出了指定方法的参数列表,可以选中某个要移除的参数,单击“移除”按钮,将参数移除。当选择了“预览引用更改”选项并单击“确定”按钮后,将显示图1.47所示的“预览更改-移除参数”窗口,在该窗口中列出了移除参数后影响到的所有的调用代码及XML文档注释内容。

img

图1.46 “移除参数”窗口

img

图1.47 “预览更改-移除参数”窗口

单击“应用”按钮后,将在代码中产生代码更改。

6.重新排列参数

提供了一种对方法、索引器和委托的参数顺序进行更改的简单方法。重新排列参数重构会更改声明,并在调用该成员的所有位置重新排列参数,从而反映新的顺序。

将光标置于方法、索引器或委托上,然后选择主菜单的“重构|重新排列参数”菜单项,或者按【Ctrl+R】组合键,再按【Ctrl+O】组合键,打开图1.48所示的“重新排列参数”窗口,在该窗口中通过“上移”或“下移”按钮来调整参数的位置。如果选择了“预览引用更改”选项并单击“确定”按钮后,将显示图1.49所示的“预览更改-重新排列参数”窗口,在该窗口中可以看到重新排列的参数列表及重排参数后的对引用列表的变更。

img

图1.48 “重新排列参数”窗口

img

图1.49 “预览更改-重新排列参数”窗口

重构是一种非常重要的代码修正过程,目前有很多专门的书籍对这一技术进行介绍,有兴趣的读者可以参考一些专门介绍重构的书籍。

1.3.7 可视化类设计工具

Visual Studio 2010提供了可视化的类设计工具,能够允许程序员可视化地查看或修改类及类、接口、结构、枚举和委托之间的关系。使用这个工具,程序员可以可视化地添加或移除类成员,这些修改将直接反应到代码中。也可以通过修改代码来变更类视图。

有多种方法可以插入一个新的类图文件,可以在解决方案资源管理器的工具栏中单击“查看类图”按钮,或者是在解决方案资源管理器中选中某个已存在的类文件,单击鼠标右键,在弹出的快捷文菜单中选择“查看类图”菜单项,Visual Studio 2010将打开类图设计器窗口,如图1.50所示。

程序员可以从工具栏中拖一个类或者是枚举到设计器上,如在从工具箱中拖一个类到类设计视图时,Visual Studio将弹出图1.51所示的“新类提示”窗口,在该窗口中,指定类名称及访问级别,如果要创建一个新文件,则指定新文件的名称,否则将类添加到一个已存在的文件,并指定已存在的类文件的文件名。

在有了类之后,就可以通过主菜单的“类图|添加”菜单项下的子菜单为类添加方法或属性等类成员,类详细信息窗口可以用来编辑或插入类的成员。

img

图1.50 类图设计器

img

图1.51 使用可视化类设计器创建新类 t0+NoeAUvzMY/apU898jwlcCP9tAPFa0XNh9VKqWRhsAiLJF4gMkAxm1UsAlumt6

点击中间区域
呼出菜单
上一章
目录
下一章
×