如何说服您的管理层为C#和C++开发人员升级到Visual Studio 2017

凯西·乌伦赫特

你在家尝试过Visual Studio 2017并想在工作中使用它吗?以下是今天升级的八个原因,您可以与管理层分享:

  1. 比以往更快
  2. 高效的代码导航
  3. 重构和快速操作
  4. 核心编辑器功能的添加
  5. 调试改进
  6. 全新的单元测试经验
  7. 代码样式配置和实施
  8. C#7.3和MSVC标准符合性
  9. 立即升级!

原因1:比以往任何时候都快

我们已经(并将继续)对解决方案加载和启动、分支切换和单元测试发现时间进行了实质性改进。启动来自Visual Studio 2017版本15.6,解决方案的加载速度平均比Visual Studio 2015快35%。事实上。NET和C++开发人员在Visual Studio 2017中打开大型解决方案时,会注意到他们的解决方案加载速度是2015年的两倍。告别启动延迟!

我们有关于Visual Studio安装的好消息;安装体验比以往更快、更轻量级。我们的新安装体验允许您选择要安装的内容,从而大大减少了安装时间和大小,使您能够立即在Visual Studio 2017中启动并运行。它还安装并排使用早期版本的Visual Studio。

原因2:高效的代码导航

我们知道您在理解代码和编写新代码上花费的时间一样多,所以优秀的导航工具对您作为开发人员的成功至关重要。以下是您可以执行的操作在Visual Studio 2017中有效导航:

  • 搜索 全部转到中的文件、类型、成员和符号(Ctrl+T组合键 或Ctrl+,)–使用此符号搜索(带有类别过滤器和个性化命令)可以跳转到代码库中的文件和符号,而无需通过解决方案资源管理器。例如,要仅将搜索结果筛选为类型,请使用查询语法(例如“t myType”)、类型筛选器按钮或命令编辑。转到类型(请参见编辑>转到)。Go To All搜索还支持camelCase匹配,因此您不必键入太多字符即可获得所需的结果(例如,“mf”表示“myFile.cs”)。
  • 在“查找所有引用”中对结果进行分组、排序、筛选和锁定(Shift+F12键)–将您的分组。NET和C++通过文档、项目、定义等引用结果,以快速缩小搜索范围(无论是识别死代码还是调查重构的后果)。对于。NET开发,在Find All references中查看彩色符号引用,这样您的结果看起来就像编辑器中的代码。
  • Ctrl+单击 转到定义–按住Ctrl键,将鼠标悬停在符号上以创建链接,然后单击导航到定义。如果您喜欢鼠标,或者在调试会话中滚动和探索,这将特别有帮助。
  • 转至的实施。净值(Ctrl+F12组合键)–查看基类型或成员的所有实现。如果只有一个,我们就把你扔到那里!在Visual Studio 2017中,您可以在方法签名中的“override”关键字上转到定义,以返回到被覆盖的基类型或成员。
  • 导航 为C#源代码反编译程序集(2012财年)–启用此功能可以在转到定义时查看外部源的方法体(而不仅仅是元数据中的签名作为源)。要启用此功能,请转到工具>选项>文本编辑器>C#>高级>导航到反编译程序集.

“全部转到”显示最近的文件,并突出显示当前文件的范围选项

原因3:重构和快速行动

Visual Studio 2017的每个版本都会带来更多更多重构和快速修复。可以使用触发任何快速操作或重构Ctrl+键。Alt+Enter键(用于单手操作)。以下是一些您要求的,到目前为止已经实现的。NET,跨版本15.0到15.8:

  • 添加null-check
  • 反转if-statement
  • 解决合并冲突
  • 将LINQ查询转换为foreach
  • 将foreach转换为for-op,反之亦然
  • 在“var”和显式类型之间切换
  • 同步文件和类型名称
  • 将类型移动到同名文件
  • 从调用站点向构造函数或方法添加参数
  • 将String.Format转换为插值字符串
  • 将私有字段设为只读
  • 添加缺少的修饰符和排序修饰符
  • 删除未使用的变量
  • 删除不必要的括号

对于C++,有几个新的快速操作需要注意:

  • 将宏转换为Constexpr
  • 更改声明以使用Constexpr

因为。Visual Studio 2017中的NET体验是基于Roslyn语言服务构建的,任何开发人员都可以编写自己的重构或代码分析器来自动执行操作或强制执行样式。阅读我们的演练要开始使用或查看您可以下载的现有社区分析器。

反转If语句

原因4:添加核心编辑器功能

我们已经添加了(并正在努力添加更多)常见的编辑器功能,以便您可以快速移动和编辑代码:

  • 展开/收缩选择(Alt+Shift+[+/-])–通过代码结构增加和缩小您的选择,即从符号到表达式到语句再到正文到文件。
  • 重复行(Ctrl+D组合键在默认配置文件中)–复制所选文本(如果没有选择,则复制当前行),而不向复制/粘贴剪贴板添加任何内容。
  • 多点编辑(Ctrl+Alt+单击和Shift+Alt+Ins)-通过Ctrl+Alt+Click创建多个插入点,或使用Shift+Alt+Ins添加与当前选择相匹配的新插入符号和选择。
  • 结构指导线–使用大括号之间的垂直线轻松可视化代码的结构。将鼠标悬停在行上以查看代码结构的层次结构。
  • 新的键映射方案 -如果您来自另一个IDE或编码环境,可以使用工具>选项>环境>键盘并使用下拉菜单选择新的VS Code或ReSharper(VS)方案。

对于C++开发,我们添加了其他几个编辑器改进:

  • 打开文件夹模式–通过打开包含源代码的文件夹来编辑、读取、构建和调试C++代码,而无需创建任何解决方案或项目。这包括对处理CMake项目的内置支持。
  • 模板智能感知–编辑器现在显示一个“模板栏”,允许C++开发人员在类/函数模板中为改进的IntelliSense提供样本模板参数。
  • 快速信息中的宏扩展–将鼠标悬停在宏上将显示预处理器将在编译的第一阶段替换的宏的实际展开。

CPP模板智能感知

原因5:调试改进

Visual Studio 2017调试器允许您通过呈现关键信息和功能更快地诊断问题,而无需新的断点和重新启动调试会话。

  • 新的异常助手–查看引发NullReferenceException时哪个变量或成员返回null,并调整异常配置选项。
  • 后退调试 (仅限企业)–返回到以前的断点或步骤,查看应用程序的状态。
  • 运行以单击–将鼠标悬停在代码行的开头,然后单击绿色的“播放”按钮将调试器运行到您所在的位置,而无需搜索黄色的指令指针。
  • C的Just My Code单步执行++–跳过非用户代码,这样您就不必花时间跳过无数行您不感兴趣的库代码。

原因6:全新的单元测试经验

我们致力于为MSTest(v1.0和2.0)、NUnit、XUnit、Google Test和Boost框架提供快速高效的单元测试体验:

  • 测试浏览器性能改进–Visual Studio 2017中的测试发现速度很快,我们将立即显示新添加的测试(无需构建)。
  • 测试资源管理器层次结构视图-我们还添加了单元测试的层次结构视图,以便您可以按项目、类等对其进行浏览和运行。测试运行现在还具有响应图标,以便您查看当前正在执行和等待执行的测试。
  • 带电单元测试。NET(仅限企业版)–当您键入时,Live Unit Testing会识别哪些单元测试受代码更改的影响,运行这些测试,并更新编辑器中的图标以显示测试运行的结果。您可以通过包括或排除测试项目或单个测试来配置在“活动测试集中”中发现和运行的测试。要启用活动单元测试,请转到测试>活动单元测试>开始.
  • Google Test and Boost对C的支持++-谷歌测试与提升。测试单元测试框架完全受支持,并与VisualStudio的测试工具集成。

显示测试血统的测试浏览器

原因7:代码样式配置和实施

Visual Studio 2017使个人和团队能够通过编码约定配置和实施.

  • 的单个编码约定。净值–在中为您的机器配置编码首选项工具>选项>文本编辑器>C#|基本>代码样式.
  • 的团队编码约定。净值–使用.editorconfig(我们与社区合作,扩展了开源文件格式,以与.NET代码样式一起使用)对约定进行编码,并在Visual Studio中强制实施。告别从文件共享管理规则!
  • 修复所有冲突–使用灯泡菜单(Ctrl+键。Alt+Enter键)并从预览对话框中选择“文档”、“项目”或“解决方案”范围,以修复违反单个规则的所有情况。
  • 单击一次代码清理。净额-在Visual Studio 2017 15.8中,您可以使用Format Document执行其他代码清理(控制+K,D)通过在中配置它工具>选项>文本编辑器>C#>代码样式>格式并检查诸如Remove和Sort usings之类的修复。
  • C的ClangFormat++–除了EditorConfig之外,还支持ClangFormat,使C++开发人员能够根据一组可以在.clang-format或_clang-format文件中配置的规则设置代码的样式和格式。

原因8:C#7.3和MSVC标准符合性

C#7.0版本默认情况下,Visual Studio 2017附带了元组、模式匹配和输出变量等语言功能,以帮助您处理数据并使代码更具可读性。您还可以将项目升级到C#的“最新次要”版本,并利用我们的点释放中的功能比如:async Main、Span、Enum约束等等!

自Visual Studio 2017 15.7版起,MSVC编译器工具集符合C++标准直至并包括C++17,但有一些小例外。C++团队致力于对编译器进行彻底的改造,使其更容易实现现代C++功能。此外,我们还添加了C++核心指南检查扩展(CppCoreCheck)。此扩展旨在便于采用C++核心指南和指南支持库中的实用程序。

迁移到Visual Studio 2017 for C++比以往任何时候都容易。Visual Studio C++2017与Visual Studio C++2015二进制兼容,因此无需重新构建2015组件。此外,工具集的解耦意味着您可以使用2013年或更高版本的工具集。

立即升级

升级对您的团队来说可能非常容易–如果您和您的团队在Visual Studio社区中或拥有EA/Subscription,那么您现在已经可以访问Visual Studio 2017许可证。要了解有关如何升级的更多信息,请访问我们的升级站点。若要了解有关如何在Visual Studio 2017中提高效率的更多信息,请查看生产力指南的。NET开发人员了解我们的工具和功能的全面概述。

给我们反馈

我们将以前所未有的速度发布Visual Studio更新,以便在您可能遇到的任何问题上为您解除障碍,并改进和创建功能,使您在日常工作流程中更有效率。

使用发送反馈按钮,以直接访问产品团队(我们查看了所有产品!),并轻松共享内存转储和跟踪,以便我们可以更快地调查您可能存在的性能问题。此外,使用按钮请求轻松自信地编写所需的生产力特性。我们在这里帮助您升级!

0条评论

讨论结束。

反馈usabilla图标