宇宙第一 IDE 发布新版了
共 7365字,需浏览 15分钟
·
2021-12-17 09:38
Visual Studio 2022 正式版发布。
新版本带有 go-live 许可证,可供生产使用。在 Visual Studio 2019 的基础上,新版集成开发坏境提供了非常多的改进,包括对 64 位、.NET 6 和 C++ 20 的支持,为核心调试器提供更好的性能,并在实时共享会话中支持文本聊天。
发布活动:https://visualstudio.microsoft.com/zh-hans/launch/
下载地址:Download Visual Studio 2022
● v143 构建工具现在可以通过 Visual Studio 安装程序以及独立的构建工具使用。搜索公众号互联网架构师回复“2T”,送你一份惊喜礼包。
● 当在调试器下运行时,新的热重新加载体验现在可用于本地C++应用程序。它同时支持MSBuild和CMake项目。更多信息请看"热重载"部分。
● 你现在可以在WSL2上本地构建和调试,而无需建立SSH连接。跨平台的CMake项目和基于MSBuild的Linux项目都被支持。
● Visual Studio现在支持CMakePresets.json中的buildPresets.target选项。这允许你在你的CMake项目中构建一个目标子集。
● 精简了 CMake 项目中的项目菜单,并提供了"删除缓存和重新配置"以及"查看缓存"的选项。
● 更新了 CMake 概述页面以支持 CMakePresets.json。
● 现在你可以用LLDB从Visual Studio调试运行在远程系统上的进程。
● 微软把随 Visual Studio 一起发布的 CMake 版本升级到了 3.21 版。有关可用内容的详细信息,请参见CMake 3.21发布说明。
● 与 Visual Studio 一起提供的 LLVM 工具已经升级到了 LLVM 12。详情请参见 LLVM 发布说明。搜索公众号互联网架构师回复“2T”,送你一份惊喜礼包。
● MSVC 工具集现在默认在调试记录中使用 SHA-256 源代码散列。此前,该工具集默认使用MD5进行源代码散列。
● 使用 C++ 进行游戏开发的工作负载现在可以安装最新的虚幻引擎,并支持Visual Studio 2022。
● 在为导入的模块和头单元的类型提供导航和语法高亮时,对C++智能感应进行了改进。
● 通过优化缓存头的使用和符号数据库的访问,改进了C++智能感应的性能,提供了改进的加载时间以进入你的代码。
● 适用于C++的IntelliSense Code Linter现在是默认开启的,提供即时的as-you-type建议和常见代码缺陷的修复建议。
● 在开关-fsanitize=fuzzer下支持libfuzzer。更多细节见文档。
● 代码分析现在强制要求必须检查带有_Check_return_或_Must_inspect_result_注释的函数的返回值。
● 在C++移动开发的工作量中更新到NDK r21 LTS。
● C++ AMP头文件现在已被废弃。在C++项目中包含amp.h会产生构建错误。要消除这些错误,请定义_SILENCE_AMP_DEPRECATION_WARNINGS。请参阅 AMP弃用链接以了解更多细节。
● 附加到进程对话框的改进
● 异常帮助器的改进
● 微软发布了一种新的断点类型,叫做依赖性断点,它允许你配置一个断点,使其只在另一个断点被首先击中时才被启用。
● 为Extrenal Sources节点添加了更多的更新,现在你可以在子节点"无源模块"下看到模块,并以Solution explorer本身的形式加载符号。
● 解决方案资源管理器中的外部源节点
● 附加到流程对话框的改进
● 为垂直和水平标签添加颜色标签
● 增加了主题包,并与VS Code主题作者合作,推出了自定义主题集合
● 建立了主题转换器,将VS Code主题转换到Visual Studio 2022中使用。
● 增加了将Visual Studio主题与Windows主题同步的功能
● 增加了新的文档管理功能,包括自定义标签宽度,加粗活动文档,以及docwell中额外的关闭按钮。
● Azurite 将被用于Azure Storage的本地仿真,而不是旧的、不再积极开发的Azure Storage仿真器。
● 对任何跨越不同存储库的解决方案(即在不同Git存储库中托管项目的解决方案)的预览标志下的多存储库支持
● 在创建git仓库的过程中,现在完全支持发布到Azure DevOps。
● 状态栏的增强,包括从空VS查看和打开仓库的新功能,并显示未拉动提交的数量搜索公众号互联网架构师回复“2T”,送你一份惊喜礼包。
● Git Changes 窗口的溢出菜单现在可用于仅有本地仓库的额外git操作
● 统一的 Diff 工具栏,包含添加/删除的行数和可发现的配置选项
● 提交细节的改进,包括一个更灵敏和用户友好的用户界面
● 在17.0版本中,我们重新设计了帮助菜单,包括入门材料和有用的提示/技巧。
● 通过添加诸如访问开发者社区、发行说明、Visual Studio产品路线图和我们的社交媒体页面,提供了与我们开发团队的更多合作。
● 热重载现在可以通过Visual Studio调试器向.NET开发人员提供,对于许多.NET 6应用程序类型,不需要调试器。
● 在使用Visual Studio调试器时,热重载现在可供C++开发人员使用。
● 整行补全可以根据你当前的上下文预测你的下一段C#代码,并在你的光标右边以内联建议的形式呈现。
● JavaScript和TypeScript测试现在可以在Visual Studio Test Explorer中进行。
NPM GUI可用,所以你现在可以像下载Nuget包一样下载NPM模块了
.NET 6 SDK
● .NET 6 SDK已包含在Visual Studio 2022中。
● 引入参数重构可以将一个新的参数从方法实现转移到其调用者。
● 在生成覆盖物对话框中增加了搜索选项
● XML code标签的快速信息现在可以保留空白和CDATA块
● 转到实现将不再导航到具有抽象声明的成员,这些成员也被重写了。
● 从Solution Explorer中同步命名空间以匹配您的文件夹结构
● 对于新的.NET项目,现在默认启用了Nullable引用类型。
● 现在默认情况下,导航到反编译的源码是打开的。
● 重构为优先于类型检查的空值检查
● 当一个方法明确抛出异常时,XML注释现在会自动生成一个exception标签
● C#10
● Razor文件中的片段支持,将通过一个标签完成片段会话,而不是按标签-标签。
● 当有嵌套的HTML和Razor组件时,在@code块中有更好的格式化。
● 性能改进搜索公众号互联网架构师回复“2T”,送你一份惊喜礼包。
● TagHelpers现在是彩色的,支持快速信息分类和完成工具提示
● 评论现在具有自动完成、智能缩进、自动包含评论的延续和块状评论导航功能
● 非常早期的实验性预览,能够在远程环境中运行测试,如linux容器、WSL和通过SSH连接。
● 在测试资源管理器中显示
● Web负载测试和Coded UI测试支持更新。编码UI测试和[Web负载测试](基于云的负载测试服务终结 | Azure DevOps博客(microsoft.com)在2019年正式废弃。为了尽量减少对用户的影响,在Visual Studio 2022中对这些功能的支持是最低的。我们强烈建议用户取消Coded UI Test和Web Load Test。
● 改进了"信任设置"功能,现在只要在IDE中打开不受信任的代码(如文件、项目或文件夹),就会显示警告。
● 用户可以跳过对Visual Studio创建的临时位置的信任检查
● 通过Visual Studio 2022,将有多个同时支持的服务基线在秋季和春季发布。更多细节请参考Visual Studio发布节奏文档和Visual Studio 2022产品生命周期。
● IT管理员现在可以在没有安装Visual Studio的情况下报告问题。
● 发布摘要页面现在有启动/停止远程调试和分析的操作,在"托管"部分的右上角的"..."菜单下。搜索公众号互联网架构师回复“2T”,送你一份惊喜礼包。
● 连接的服务"页面现在有一个动作来启动存储资源管理器
● .NET 6附带的"ASP.NET Core Empty"模板正在使用新的"最小API"范式,我们已经开始为其添加支持。
● Azurite将被用于Azure Storage的本地仿真,而不是旧的、不再积极开发的Azure Storage仿真器。
● 你可以通过Visual Studio中的"连接服务"体验,使用微软身份认证平台为你的ASP.NET Core应用程序添加认证。
XAML热重载
● XAML Hot Reload的变化--对应用内的工具栏和设置的微小变化
全栈架构社区交流群
「全栈架构社区」建立了读者架构师交流群,大家可以添加小编微信进行加群。欢迎有想法、乐于分享的朋友们一起交流学习。
扫描添加好友邀你进架构师群,加我时注明【姓名+公司+职位】
全栈架构社区交流群
「全栈架构社区」建立了读者架构师交流群,大家可以添加小编微信进行加群。欢迎有想法、乐于分享的朋友们一起交流学习。
看完本文有收获?请转发分享给更多人
往期资源: