现在已经是 2021 年了,然而 Visual Studio 作为被最早使用 IDEs 的(集成开发环境)之一,依旧是 C++ 社区中最受欢迎的。最近 JetBrains 的一个调查显示 Visual Studio 依旧是被 C++ 开发人员使用最多的 IDE.
图片来源:JetBrains
简单来说,对于 c++ 开发人员来说,Visual Studio 就是最佳选择。
但是你的工作并不仅仅局限于将 VisualStudio 作为你选择的 IDE.大部分开发人员还将 VisualStudio 与 extensions 结合在一起。(在 VS 的扩展市场中可以被找到)
虽然如今大多数市场上的文章关注点在于最近发布的 VisualStudio 2019 有什么新功能(提示:一个反应更快的新用户界面以及性能的全面提升),但我依旧想把重点放在可以为 C++ 社区提供 Visual Studio 扩展的奇妙之处,并与您分享我的首选。
01 Visual Assist
在现实工作中,编译经常失败,大概频率是多久一次?不同组织发表的数据都不同,但是根据 eBay 高级 DevOps 架构师 Eitan Schichmanter 预估:“15%-30% 的编译会因为各种原因在发布分支上失败”。
这个由 WholeTomato 带来的扩展有着可以提高效率的众多特性,比如自动完成、自动重构、代码生成、调试等等。它以可以降低代码复杂度和快速生成代码而闻名。
它的功能包括:
- Navigation
- Refactoring
- Coding assistance
- Code generation
- Code understanding
- Code correction
- Code inspection
- Debug assistance
Visit Visual Assist in Visual Studio Marketplace
02 Code Runner
代码运行器使您能够直接在 Visual Studio 代码中为任何语言运行代码文件或代码片断,而不需要终端交互。
Visit Code Runner in Visual Studio Marketplace
03 Resharper C++
JetBrains 为 .NET 提供的旧扩展版本现在也为 C++ 提供了相似的版本。比如 Visual Assist,这个扩展也是一组高效工具(JetBrains 写了一篇比较两者的文章),ReSharper“提供即时代码分析、快速修复、强大的搜索和导航、智能代码完成、重构、各种代码生成选项和其他功能,都可以帮助提高您的日常工作效率”。
Resharper 可以帮助 C++ Visual Studio 的使用者:
- 分析并提高代码质量
- 找到使用方法并导航代码
- 重构和转换编码
- 生成公共代码
- 运行和管理单元测试
- 保持代码风格一致
Visit ReSharper C++ in Visual Studio Marketplace
04 Code Maid
顾名思义,CodeMaid 就是关于清理代码的。它通过删除不需要的空白、以有一致性的方式来组织代码和格式化代码达到简化代码的目的。除此以外,它还提供了导航和挖掘功能,允许重新排列代码以获得更好的导航代码的效果。
功能列表令人印象深刻,有以下功能:
- Code cleaning
- Code digging
- Code reorganizing
- Comment formatting
- Joining
- Finding
- Sorting
- Collapsing
- Progressing
- Configuring
- Switching
- Toggling
Visit CodeMaid in Visual Studio Marketplace
05 Code Compare
一个用于文件和文件夹比较和合并的工具,允许多向合并,并提供:
- 用于插入、删除和修改文本的色块
- 代码行内更改之处都被详细高亮标记
- 折叠未更改的文本区域(Pro-feature)
- 用鼠标点击合并
- 即时编辑文件
- 为高级用户合并捷径
点击此处访问 Visual Studio 市场中的 Code Compare
Backtrace Crashpad Integration
Backtrace 是一个错误检测工具,其品牌口号是“发布快,代码优”(听起来就让人喜欢!)。本质上,Backtrace 是一个错误管理平台,帮助查找和修复故障与异常。Visual Studio 的这个扩展程序大大简化了故障检测过程,安装和集成中的 Crashpad 错误在 Windows C++ 开发中就能捕捉到。简单来说,Backtrace 简化了故障报告。
Backtrace 非常适合使用开源代码的 C++ 开发者,可以借此将工作分解,以便编译源代码,并与应用程序集成。
Backtrace 的功能包括:
- 智能向导,帮助将 Crashpad 二进制文件添加到构建中,确保使用正确的二进制文件
- Crashpad 可编辑模板文件
- 后期构建脚本
访问 Visual Studio Marketplace 中的 Backtrace Crashpad Integration
FastFind
FastFind 是一个非常方便的工具,可以通过定位文件中的文本以查找项目(而不是在文件进行繁琐地搜索)。FastFind 的高级模式,可以在编码时自动更新用户。同时还包括一个“跳转”功能,便于在 C++ 头文件中来回跳转。
另外,FastFind 还有一些很赞的功能,例如:
- 快速匹配通配符
- 模态框与可停靠窗口
- 可定制的颜色
访问 Visual Studio Marketplace 中的 FastFind
SonarLint
SonarLint 是 Visual Studio 2019 的一个扩展程序,用于快速查找 C#、VB.Net、 C、C++ 中的错误和质量问题。SonarLint 实质上是一个静态智能代码分析工具,包含数百条规则。
访问 VisualStudioMarketplace 中的 SonarLint
Incredibuild
尽管有点私心,但是 C++ Visual Studio 社区确实应该把 Incredibuild 的解决方案当作开发“必备”。Incredibuild 的技术解决了 C++ 编译最常见的时间冗长痛点,并加速了整个开发周期,增速高达 30 倍!借助 Incredibuild 进程虚拟化技术,构建、测试、代码分析等耗时作业分发至本地网络与云端的计算机中,开发时间大幅缩短 90%。此外,Incredibuild 的可视化工具更是史无前例地优化了构建体验,图形用户界面代替文本输出,直观简洁地展示分布式构建进程。更多客观评价,请查看 Visual Studio 介绍 Incredibuild 的相关文章。
访问 VisualStudioMarketplace 中的 Incredibuild
写在最后
总的来说,上述列举的 C++ 扩展程序是为了帮助大家更好地使用 Visual Studio。文中所推荐的扩展程序,也是我认为最好最实用的 Visual Studio 扩展。但是,了解扩展的最好方法是亲身测试,如果这个程序能与你完美匹配,那它就是你的最佳搭档。