Visual Studio 2010新特性
新特性之自定义开始页
Visual Studio 2010的开始页由一个StartPage.xaml文件控制,通过编辑这个文件,我们可以在我们的这“一亩三分地”上任意耕种,我们可以添加内容,添加按钮执行某些功能,甚至可以添加一些自定义的控件完成一些特殊的任务等等。总之,自定义的开始页很好很强大,可以说,自定义开始页是Visual Studio 2010带个程序员们的一份见面礼。Visual Studio 2010默认的开始页包括可以查看新闻,打开项目文档,反馈问题,打开项目等等。
俗话说,好的开始是成功的一半。自定义开始页是如此强大,可以帮助我们完成很多常见的任务,给我们的开发工作带来极大的便利。
新特性之多显示器支持
随着现代应用程序规模越来越大,开发工具越来越复杂,需要同时处理的信息也越来越多,多显示器已经成为我们开发工作的实际需要了。常常我们希望能够一边编写代码,一边能够直观地看到界面的变化,同时我们还想开着搜索引擎查资料等等。面对这么复杂的应用,
如果我们只有一个显示器,我们就需要在各个窗口之间切换,这无疑会影响开发的效率。如果我们可以拥有多个显示器,我们就可以在桌面上放置更多的窗口,这些工作就可以真正的同步进行了。减少窗口的切换,无形中会提高我们的开发效率。
另外,因为显示器成本的降低,使得一个程序员配备多个显示器成为一种现实的可能。
所以,现在越来越多的程序员开始拥有两台甚至多台显示器。程序员们的默认装备,由原来的主机+显示器开始逐渐变为笔记本+显示器。这样,一个程序员比较可以使用笔记本的小屏幕,还可以使用独立的一个较大尺寸的显示器,极大地方便了开发工作。正是为了适应这种趋势,Visual Studio 2010添加了对多显示器的支持。
在多显示器环境下,我们可以把VS2010中的多个窗口布置在不同的屏幕上。比如我们可以将代码编辑器放置在主显示器中,将输出窗口,类图窗口,代码定义窗口等等提供辅助信息的窗口放置在副显示器中,这样我们就可以在主窗口中编辑代码,同时有需要的时候,可以及时地从辅助窗口中得到一些有用的辅助信息。可以想象,多显示器可以极大的提高我们的开发效率。
在Visual Studio 2010中,微软使用Windows Presentation Foundation (WPF)重新打造了IDE。得益于WPF的强大功能,除了能够很好地支持多显示器外,VS2010的IDE同时还具备了很多很酷的功能。比如:
启用WPF Shell
因为WPF Shell这部分功能还正在开发之中,所以即使是作为技术预览的CTP版本,默认情况下WPF Shell的功能也是关闭的,我们必须通过修改注册表来启用WPF Shell。
在注册表中添加如下注册表键值:
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\General\EnableWPFShell (REG_DWORD) = 1
但Visual Studio启动的时候,它会检查这个注册表键值,如果为1,则启用WPF Shell。
在注册表中添加如下注册表键值:
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\General\EnableWPFShell (REG_DWORD) = 1
但Visual Studio启动的时候,它会检查这个注册表键值,如果为1,则启用WPF Shell。
浮动窗口
为了体验VS2010中基于WPF的新IDE,我们新创建一个Visual C#项目,选择“Windows Forms Application”作为项目模板。项目创建完成后,我们在解决方案浏览器(Solution Expl
orer)中到Form.cs,然后右键单击这个文件,在弹出的上下文菜单中我们选择“View Code”打开代码编辑器。我们可以通过拖拽代码编辑器的标题栏,将代码编辑器拖动到合适的位置,在同一个屏幕中同时显示窗体编辑器和代码编辑器。
多窗口即时更新
在VS2010中,多个相关联的窗口不仅能够同时显示,还能够实现多个窗口的即时更新。比如我们在窗体编辑器中对这个窗体Form1进行编辑的时候,可以同时看到Form1.cs和Form1.Designer.cs这两个相关的代码文件的即时更新。我们在窗体编辑器中对窗体的修改,都能够即时的反应到代码文件中。比如我们在窗体上添加一个按钮控件,我们就能够同时看到Form1.Designer.cs中添加了相应的代码;当我们双击这个按钮控件,就可以看到Form1.cs中添加了相应的单击事件函数。
代码编辑器的无级缩放
由于使用了WPF,VS2010可以实现代码编辑器的无级缩放。我们可以按住Ctrl键,然后使用鼠标滚轮对代码编辑器进行缩放。这种缩放的方式,相对于以前那种通过修改字体字号
来改变代码文字大小的方式,方便了很多,操作起来更加人性化。代码缩放的功能虽然简单,但是非常实用:但代码较长的时候,我们可以通过缩放代码,对代码快速的定位,到需要编辑的位置。
清新的代码选择
在VS2010中,它充分地利用WPF在UI上的优势,其中经过美化的代码选择就是一个很好的例子。在VS2010中,代码的选择不再是一整片的反显示,而是非常漂亮的半透明渐变显示,让整个代码选择非常清新自然,同时也更加醒目。
总体而言,除了WPF Shell未完工的部分图标、菜单显得很“丑陋”之外,整个VS 2010的IDE使用起来非常“舒服”。让人觉得使用VS2010做开发是一种享受。
新特性之IDE的调用继承树
写程序离不开调试,调试离不开理清程序的执行流程。在以前的Visual Studio版本中,我们几乎都是调试的时候通过调用栈来查函数间的调用关系,帮助调试的。调用栈虽然好用,但是只能在调试时使用,同时也只能串行,只有一条执行路径。另外,随着现代应用
程序越来越复杂,调用栈已经无法满足我们分析程序逻辑的需要。所以在Visual Studio 2010中,微软为我们提供了新的程序逻辑分析工具:调用继承树(Call Hierarchy)窗口。
在调用继承树窗口中,我们可以像“爬树”一样,在这棵调用继承树的各个节点和对应的代码之间任意跳转。
新特性之支持TDD
在传统的软件开发模式中,我们总是先根据需求编写代码,然后再编写测试程序对其进行测试。这常常使得开发人员在项目的开发后期陷入痛苦的泥潭:当测试程序发现问题后,还要回头再修改当初已经实现的某个类,或者对已经定义好的函数接口进行修改或者扩展。为什么会发生这样的事情呢?这是因为这部分代码的使用需求没有很好的描述。我们在设计类和函数的时候,没有很好的对它们的使用情况进行分析,最终导致代码无法满足测试程序中对代码的使用需求。 为了挽救痛苦挣扎的开发人员,测试驱动开发(Test-Driven Development, TDD)通过编写测试程序,先考虑代码的使用需求(包括功能、过程、接口等),而且这个描述是可执行验证的。通过编写这部分代码的测试程序,对其功能的分解、使用过程、接口都进行了设计。而且这种从使用角度对代码的设计通常更符合
后期开发的需求。
测试驱动开发开始流行于20世纪90年代,是极限编程中倡导的程序开发方法之一,其主要思想就是先写测试程序,然后再实现代码使其通过测试。在TDD产生之初,曾经被当做程序员们的救命稻草而受到众人追捧。但是后来在实践过程中人们逐渐发现,由于缺乏相应的开发工具的有力支持,TDD的实施变得困难重重:无法高效地编写测试程序;测试程序写好后,无法自动生成代码框架,开发人员还要用大量的时间来编写实现代码。这些现实的因素都困扰着TDD的发展,让大家有一种TDD“看上去很美”的感觉。
现在,Visual Studio 2010的即将到来,可以让坚守TDD的开发人员们欢呼了:VS2010的“即用即产生”特性,可以让我们根据测试程序,根据代码的使用情况,快速地反向生成相应的代码。可以说,“即用即产生”特性,给TDD插上了腾飞的翅膀。有了“即用即产生”功能,Visual Studio 2010中的TDD真如“行云流水”般顺畅。
现在,Visual Studio 2010的即将到来,可以让坚守TDD的开发人员们欢呼了:VS2010的“即用即产生”特性,可以让我们根据测试程序,根据代码的使用情况,快速地反向生成相应的代码。可以说,“即用即产生”特性,给TDD插上了腾飞的翅膀。有了“即用即产生”功能,Visual Studio 2010中的TDD真如“行云流水”般顺畅。
新特性之支持Office
一位漂亮的OL把Word当做文字处理软件来使用,这无可厚非;但是如果一位帅气的Developer也仅仅把Word当做文字处理软件来使用,恐怕会被同行耻笑。在程序员的眼中,
Office不仅仅是一套非常流行的办公软件,更是一个成熟的开发平台。Office的应用是如此广泛,几乎深入到企业信息化和个人文档处理的每个角落。通过Office开发,可以帮助企业或者个人完成很多重复性的工作,规律性的工作甚至创造性的工作,正是因为如此,Office开发在软件开发中显得越来越重要,已经成为商业软件开发的一个重要领域。
Visual Studio 2010 CTP中,它提供了很多新的特性,来解决Office开发中的主要问题,以更好地支持Office开发。当然,这些特性也可以应用在其他场合。这些新的特性包括:
Visual Studio 2010 CTP中,它提供了很多新的特性,来解决Office开发中的主要问题,以更好地支持Office开发。当然,这些特性也可以应用在其他场合。这些新的特性包括:
动态编程
在前面我们曾经介绍过,C# 4.0中引入了一种新的静态类型dynamic,这使得我们在使用COM进行Office开发的时候,无需再进行复杂而繁琐的对象类型转换。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论