技术开发 频道

详解Visual Studio 2010中的扩展管理器

    【IT168 技术文档】扩展能够为核心应用程序提供附加的功能或者自定义设置。 在很多应用程序中这都是很流行的,包括流行的web浏览器IE和Firefox、微软的Office、媒体播放器、Photoshop、Eclipse、Visual Studio等等。其中有些可能比较新奇,而针对开发工具——像Eclipse和Visual Studio——的扩展让开发者的生产力得到了显著提高。

  Visual Studio早期的版本是构建在COM技术之上的。 而Visual Studio的主要扩展方式插件是通过COM接口实现的。 随着时间的变化,插件机制已经得到了改善。 在2002年,随着Visual Studio .NET的发布,微软引入了.NET和COM之间的互操作性。 在Visual Studio 2005中,插件支持使用XML的简化部署方式。 之后不久,微软发布了Visual Studio SDK开发包,这是一种更为新式的机制,通过底层的API提供了与Visual Studio的IDE更深层次的整合。

  随着时间的推移,Visual Studio扩展的部署技术也得到了改善。 在Visual Studio 2005中引入了Visual Studio 内容安装器(Content Installer VSI),它可以用于部署宏、插件、工具箱控件、代码片段以及模板。 而更广泛地用于应用程序安装的Windows安装包(MSI),则成为针对Visual Studio包的主要部署技术。 VSI和MSI格式的文件中都包含了完整的分发包。

  这种设计导致了一些交付问题。 为了获得扩展,用户需要在不计其数的网络站点中搜索、下载和安装。 管理扩展的依赖关系和更新既不简单,也不易懂。

  在Visual Studio 2010增加的多种新特性中,新的扩展管理器就是为了解决扩展部署问题的。 它遵循了一种新的用于发布和部署第三方扩展的趋势,这种趋势是由于像Firefox和Eclipse这样的项目而变得流行。

  本文会向你介绍Visual Studio 2010的扩展管理器。 你会了解到如何构建简单的扩展,并把它部署到Visual Studio Gallery中。

  崭新的用户体验

  应用程序扩展是与核心应用程序分别发布的。 传统上认为它们更像是独立的应用程序。 尽管随着时间的推移,Visual Studio扩展性的很多方面都得到了改善,然而交付机制还是没有太多的改变。 它遵循的是双击工作流(double-clicking workflow),那并不容易。

  在哪里能够找到扩展?

  如何管理扩展的生命周期,包括安装、更新和卸载?

  在过去,想要找到针对Visual Studio的正确的扩展,我们需要做大量的搜索工作。 开发者可以在Internet上搜索扩展,或者可以从杂志的文章中、论坛的帖子中或者博文中获得扩展的信息。但我们很难发现所有可用的选择,而且也很难对类似的扩展进行比较。

  有了Visual Studio Gallery之后,这种状况已经得到了改变。 这个站点是Visual Studio扩展的官方和集中资源所在。 你可以浏览并且订阅扩展的RSS。 你还可以阅读评论,并提供你的反馈,对扩展打分。

  Visual Studio 2010的扩展管理器是与Visual Studio Gallery结合使用的。 它把Visual Studio Gallery带到了Visual Studio IDE中(如图1所示)。 我们不再需要使用web浏览器来搜索或者运行安装程序了。 在Visual Studio 2010中,我们可以通过Tools | Extension Manager菜单来打开扩展管理器。 当扩展管理器打开之后,它会列出已经安装了的扩展。 如果对于扩展有更新可用,也会在其中列出来。 在左边的面板中,点击“Online Gallery”标签页,你就可以浏览和搜索在“Visual Studio Gallery”中可用的扩展了。 当你选择一项扩展,相关的描述就会显示在右侧的面板中。 点击“下载”按钮,扩展管理器马上就会开始下载选中的扩展。

1

  图1 Visual Studio 2010的扩展管理器

  有时,安装一项扩展需要重启Visual Studio。 这也没关系。 IDE会返回之前的样子,载入最新的解决方案。 删除扩展同样很容易。 通过Tools | Extension Manager 菜单打开扩展管理器,选择扩展,然后点击“Uninstall”按钮。

  它不仅提供了简单的方式,让我们可以在Visual Studio IDE中搜索和安装扩展。 还提供了对扩展完整的生命周期管理。 我们还可以在Visual Studio IDE中对扩展进行启用/禁用、更新和卸载。

  在扩展管理器中启用和禁用扩展的能力是值得一提的。 正如你将在本文的下一部分将会看到的,创建扩展并把它上传到Visual Studio Gallery中要比之前容易得多。 再也没有批准流程。 上传的内容马上就可以访问。 这可能有些风险。 某些扩展会有质量问题,或者与其它扩展冲突。 在那种情况下,禁用特性会为其提供帮助。

  自动的扩展更新通知也是很棒的特性。 每次你打开VS 2010的一个实例的时候,它就会自动检查已经安装的扩展的更新。 当找到更新的时候,它就会在系统托盘中显示通知图标。 点击通知,它就会载入扩展管理器来安装新的更新。 这确保你能够拥有最新的扩展更新,而不需要手动地搜索更新。

  有一些扩展对于开发者是必需的。 在Internet上,人们会告诉你他们最喜欢的扩展。 在此我列出了我所选择的部分。 建议你尝试使用它们。 那很容易,并且如果你不喜欢,总是可以禁用并卸载它们。

  Visual Studio Productivity Power Tool,这是一组用于提高生产力的工具,像解决方案导航器、带有改良的标签页的用户界面、可搜索的添加引用对话框,等等。

  · Snippet Designer,这种扩展让你可以在Visual Studio中创建代码片段。

  · Spell Check,这种扩展为纯文本文件、注释、字符串和HTML/ASP代码提供了拼写检查功能。

  · Tangible T4 Editor,这种扩展为T4模板提供了智能提示和语法的突出显示。

  · GhostDoc,这是一种能够为C#生成XML文档注释的扩展。

  · Feature Builder Power Tool,这种扩展会帮助你创建扩展。

  · PowerGUI,这种扩展为PowerShell 脚本提供了智能提示和语法的突出显示。

  · IronPython IronRuby Console,这种扩展让你能够在IronPython/IronRuby中与Visual Studio交互。 

0
相关文章