当前位置:首页 > 公众号精选 > CPP开发者
[导读]↓推荐关注↓转自:cnBeta前言VisualStudio2022正式版于发布。新版本带有go-live许可证,可供生产使用。在VisualStudio2019的基础上,新版集成开发坏境提供了非常多的改进,包括对64位、.NET6和C20的支持,为核心调试器提供更好的性能,并在实...



转自:cnBeta


前言


Visual Studio 2022 正式版于发布。新版本带有 go-live 许可证,可供生产使用。在 Visual Studio 2019 的基础上,新版集成开发坏境提供了非常多的改进,包括对 64 位、.NET 6 和 C 20 的支持,为核心调试器提供更好的性能,并在实时共享会话中支持文本聊天。


发布活动:https://visualstudio.microsoft.com/zh-hans/launch/


下载地址:https://visualstudio.microsoft.com/zh-hans/downloads/


Visual Studio 2022 的主要功能:




64 位


devenv.exe 现在只有 64 位


Azure Cloud Services


现已支持 Azure Cloud Service (classic) 和 Azure Cloud Service (extended support) 项目


C


  • v143 构建工具现在可以通过 Visual Studio 安装程序以及独立的构建工具使用。


  • 当在调试器下运行时,新的热重新加载体验现在可用于本地 C 应用程序。它同时支持 MSBuild 和 CMake 项目。更多信息请看"热重载"部分。


  • 你现在可以在 WSL2 上本地构建和调试,而无需建立 SSH 连接。跨平台的 CMake 项目和基于 MSBuild 的 Linux 项目都被支持。


  • Visual Studio 现在支持 CMakePresets.json 中的 buildPresets.target 选项。这允许你在你的 CMake 项目中构建一个目标子集。


  • 精简了 CMake 项目中的项目菜单,并提供了"删除缓存和重新配置"以及"查看缓存"的选项。


  • 更新了 CMake 概述页面以支持 CMakePresets.json。


  • 实施了 /scanDependencies 标志,用于输出 CMake 项目的 C 20 模块依赖关系,如 P1689r3 中所述。这是朝着支持用 CMake 构建基于模块的项目迈出的一步,我们正在努力在以后的版本中完成这一支持。


  • 现在你可以用 LLDB 从 Visual Studio 调试运行在远程系统上的进程。


  • 微软把随 Visual Studio 一起发布的 CMake 版本升级到了 3.21 版。有关可用内容的详细信息,请参见 CMake 3.21 发布说明


  • 与 Visual Studio 一起提供的 LLVM 工具已经升级到了 LLVM 12。详情请参见 LLVM 发布说明


  • MSVC 工具集现在默认在调试记录中使用 SHA-256 源代码散列。此前,该工具集默认使用 MD5 进行源代码散列。


  • 使用 C 进行游戏开发的工作负载现在可以安装最新的虚幻引擎,并支持 Visual Studio 2022。


  • 在为导入的模块和头单元的类型提供导航和语法高亮时,对 C 智能感应进行了改进。


  • 通过优化缓存头的使用和符号数据库的访问,改进了 C 智能感应的性能,提供了改进的加载时间以进入你的代码。


  • 适用于 C 的 IntelliSense Code Linter 现在是默认开启的,提供即时的 as-you-type 建议和常见代码缺陷的修复建议。


  • 在开关-fsanitize=fuzzer 下支持 libfuzzer。更多细节见文档。


  • 我们改进了代码分析工具中的空指针解除引用检测。


  • 代码分析现在强制要求必须检查带有Check_returnMust_inspect_result注释的函数的返回值。


  • 在代码分析中添加了对 gsl::not_null 的支持。


  • 在 C 移动开发的工作量中更新到 NDK r21 LTS。


  • C AMP 头文件现在已被废弃。在 C 项目中包含会产生构建错误。要消除这些错误,请定义_SILENCE_AMP_DEPRECATION_WARNINGS。请参阅 AMP 弃用链接以了解更多细节。


调试和诊断


  • 附加到进程对话框的改进


  • 异常帮助器的改进


  • 强制运行点击


  • 内存转储的诊断分析


  • 微软发布了一种新的断点类型,叫做依赖性断点,它允许你配置一个断点,使其只在另一个断点被首先击中时才被启用。


  • 为 Extrenal Sources 节点添加了更多的更新,现在你可以在子节点"无源模块"下看到模块,并以 Solution explorer 本身的形式加载符号。


  • 破解点沟槽的改进


  • 临时断点


  • 拖放断点


  • 解决方案资源管理器中的外部源节点


  • 附加到流程对话框的改进


个性化设计


  • 为垂直和水平标签添加颜色标签


  • 增加了主题包,并与 VS Code 主题作者合作,推出了自定义主题集合


  • 建立了主题转换器,将 VS Code 主题转换到 Visual Studio 2022 中使用。


  • 增加了将 Visual Studio 主题与 Windows 主题同步的功能


  • 增加了新的文档管理功能,包括自定义标签宽度,加粗活动文档,以及 docwell 中额外的关闭按钮。


编辑器


  • 增加了子词导航功能


  • 自动保存现在可以作为一个预览功能使用


  • 多键复制/粘贴体验


可扩展性


  • 从 Microsoft.VisualStudio.Language.Client 程序集中删除了 API


  • VSSDK包含几个突破性的变化,Visual Studio 2019 的扩展在 2022 年将无法使用。更多信息请参见 VSSDK 文档


  • VS SDK 参考程序集不再被安装到 VSSDK\VisualStudioIntegration\Common\Assemblies 文件夹中。如果您的构建依赖于这些程序集,请将您的项目迁移到使用 NuGet 包来代替。对于离线的情况。


  • 保留一个 org 内的 nuget feed,从那里恢复 nuget 包。


  • 检查安装文件。


  • 增加了 ILanguageClient 的突破性变化修复


云服务


  • Azurite 将被用于 Azure Storage 的本地仿真,而不是旧的、不再积极开发的 Azure Storage 仿真器。


Git 工具


  • 对任何跨越不同存储库的解决方案(即在不同 Git 存储库中托管项目的解决方案)的预览标志下的多存储库支持


  • 在创建 git 仓库的过程中,现在完全支持发布到 Azure DevOps


  • 状态栏的增强,包括从空 VS 查看和打开仓库的新功能,并显示未拉动提交的数量


  • Git Changes 窗口的溢出菜单现在可用于仅有本地仓库的额外 git 操作


  • 统一的 Diff 工具栏,包含添加/删除的行数和可发现的配置选项


  • 提交细节的改进,包括一个更灵敏和用户友好的用户界面


帮助菜单


  • 在 17.0 版本中,我们重新设计了帮助菜单,包括入门材料和有用的提示/技巧。


  • 通过添加诸如访问开发者社区、发行说明、Visual Studio 产品路线图和我们的社交媒体页面,提供了与我们开发团队的更多合作。


热重载体验


  • 热重载现在可以通过 Visual Studio 调试器向 .NET 开发人员提供,对于许多 .NET 6 应用程序类型,不需要调试器。


  • 在使用 Visual Studio 调试器时,热重载现在可供 C 开发人员使用。


IntelliCode


  • 整行补全可以根据你当前的上下文预测你的下一段 C# 代码,并在你的光标右边以内联建议的形式呈现。


  • 整行补全现在与 JetBrains ReSharper 的最新版本兼容。请注意,不支持基于 ReSharpers 自定义补全列表项目选择的行补全上下文的更新--如果需要,ReSharper 用户可以选择使用 Visual Studio 本地 IntelliSense 来代替,如这里的文档所示


JavaScript/TypeScript


  • 微软已经发布了一个新的 JavaScript/TypeScript 项目类型,它可以用额外的工具构建独立的 JavaScript/TypeScript 项目。你将能够在 Visual Studio 中使用你电脑上安装的框架版本创建 Angular 和 React 项目。


  • JavaScript 和 TypeScript 测试现在可以在 Visual Studio Test Explorer 中进行。


  • NPM GUI 可用,所以你现在可以像下载 Nuget 包一样下载 NPM 模块了


.NET 6 SDK


  • .NET 6 SDK 已包含在 Visual Studio 2022 中。


.NET 生产力


  • 引入参数重构可以将一个新的参数从方法实现转移到其调用者。


  • 用于数据流分析的跟踪值源


  • 可以选择在被重新分配的变量下划线


  • 在生成覆盖物对话框中增加了搜索选项


  • XML 标签的快速信息现在可以保留空白和 CDATA 块


  • 查找所有引用窗口现在可以对多目标项目进行分组


  • 重构以删除 Visual Basic 中重复的类型


  • 转到实现将不再导航到具有抽象声明的成员,这些成员也被重写了。


  • 从 Solution Explorer 中同步命名空间以匹配您的文件夹结构


  • 从 Solution Explorer 中配置后台代码分析


  • 对于新的 .NET 项目,现在默认启用了 Nullable 引用类型。


  • C# 10.0 文件范围的命名空间重构


  • 现在默认情况下,导航到反编译的源码是打开的。


  • 重构为优先于类型检查的空值检查


  • 当一个方法明确抛出异常时,XML 注释现在会自动生成一个标签


  • 继承保证金现在是默认启用的。


编程语言


  • C#10


Razor (ASP.NET Core) 编辑器


  • 减少了用户界面的冻结,提高了解决方案启动时的性能


  • 在一些解决方案中,语义着色速度加快,达到 2 倍。


  • 在 Razor 文件中支持 F7(查看代码)。


  • Razor 文件中的片段支持,将通过一个标签完成片段会话,而不是按标签-标签。


  • 当有嵌套的 HTML 和 Razor 组件时,在@code 块中有更好的格式化。


  • 在 Razor 文件中支持热重新加载


  • 性能改进


  • 格式化和缩进的改进


  • 新的 Razor 编辑器颜色


  • TagHelpers 现在是彩色的,支持快速信息分类和完成工具提示


  • Razor 结构的角括号突出显示和导航


  • 评论现在具有自动完成、智能缩进、自动包含评论的延续和块状评论导航功能


远程测试


  • 非常早期的实验性预览,能够在远程环境中运行测试,如 linux 容器、WSL 和通过 SSH 连接。


测试工具支持


  • 在测试资源管理器中显示


  • 从 17.0 开始的测试平台的新版本将不能运行通用测试和有序测试。这些特定的功能只作为 MSTestv1 早期版本的一部分,不包括在 MSTestv2 中。我们看到这些功能的使用率非常低,而且有序测试现在被认为是与最佳测试实践相违背的。


  • 在 17.0 中,一些测试经验将不可用,包括创建新的 TestSettings 文件和 TestSettings 编辑器。测试运行将仍然能够使用 TestSettings 文件,然而 TestSettings 被 RunSettings 所取代,我们鼓励用户迁移改善性能和功能。阅读更多。


  • Web 负载测试和 Coded UI 测试支持更新。编码 UI 测试和[Web 负载测试](基于云的负载测试服务终结 Azure DevOps 博客(microsoft.com)在 2019 年正式废弃。为了尽量减少对用户的影响,在 Visual Studio 2022 中对这些功能的支持是最低的。我们强烈建议用户取消 Coded UI Test 和 Web Load Test。


  • UWP 扩展 SDK 的工具箱人口


  • UWP 扩展 SDK 现在需要明确声明他们希望出现在工具箱中的类型,在他们的 SdkManifest.xml 文件中列出它们。旧版本的 Visual Studio 的行为没有改变;它们将忽略清单中的控件列表,而是动态地列举 SDK 程序集中的控件类型。


受信任的地点


  • 改进了"信任设置"功能,现在只要在 IDE 中打开不受信任的代码(如文件、项目或文件夹),就会显示警告。


  • 信任检查现在是在解决方案文件夹级别进行的。


  • 用户创建的项目会自动添加到信任列表中


  • 用户可以跳过对 Visual Studio 创建的临时位置的信任检查


更新、LTSC 和部署


  • 通过 Visual Studio 2022,将有多个同时支持的服务基线在秋季和春季发布。更多细节请参考 Visual Studio 发布节奏文档Visual Studio 2022 产品生命周期。


  • Visual Studio 2022 附带的新安装程序现在可以配置 Visual Studio 产品从哪里获得更新。这允许你从不同的 LTSC 中选择更新,或者,如果你在一个受管理的企业环境中,你可以配置客户端从一个布局中获得其更新。


  • 配置更新源的能力是 Visual Studio 安装程序附带的新功能,因此该行为也适用于 Visual Studio 的下级版本,如 Visual Studio 2019。有关配置更新渠道的其他信息,请参考 Update Visual Studio 文档。关于使其适用于网络布局的其他信息,请参阅《Visual Studio 管理员指南》。


  • IT 管理员现在可以在没有安装 Visual Studio 的情况下报告问题。


用户界面


  • 默认图标已被更新和刷新。


网络工具


  • 发布摘要页面现在有启动/停止远程调试和分析的操作,在"托管"部分的右上角的"..."菜单下。


  • 连接的服务"页面现在有一个动作来启动存储资源管理器


  • .NET 6 附带的"ASP.NET Core Empty"模板正在使用新的"最小 API"范式,我们已经开始为其添加支持。


  • Azurite 将被用于 Azure Storage 的本地仿真,而不是旧的、不再积极开发的 Azure Storage 仿真器。


  • 你可以通过 Visual Studio 中的"连接服务"体验,使用微软身份认证平台为你的 ASP.NET Core 应用程序添加认证。


.NET 框架的 WPF XAML 设计器


  • 当前的 WPF XAML Designer for .NET Framework 被一个新的 WPF XAML Designer for .NET Framework 所取代,它基于用于 WPF XAML Designer for .NET(.NET Core)的相同架构。


  • Visual Studio 的体验将看起来是一样的,但第三方控件供应商需要支持新的可扩展性模型,因为以前基于 .design.dll 和 Microsoft.Windows.Design.Extensibility 的模型已经被废弃。


  • 如果你已经为 .NET(.NET Core)创建了一个 .designtools.dll 扩展,同样的扩展将适用于新的 WPF XAML Designer for .NET Framework。关于如何迁移到新的可扩展性模型的进一步信息,请参考下面的迁移文档。


XAML 热重载


  • XAML Hot Reload 的变化--对应用内的工具栏和设置的微小变化


XAML 实时预览


  • XAML 实时预览现在可用于 WPF、UWP、WinUI 和 Xamarin.Forms 开发人员在 Android 模拟器或作为 UWP 桌面应用程序运行他们的应用程序。实时预览可以捕获正在运行的应用程序的用户界面,并将其带入 Visual Studio 中的一个停靠窗口。


  • 这使得使用 XAML Hot Reload 来改变应用程序更容易,同时在 Visual Studio 内部看到这些变化,而不需要在运行中的应用程序和 Visual Studio 之间来回切换,同时进行实时 XAML 代码修改。


  • 欲了解更多信息,请点击上面的链接。


XAML 样本数据


  • 当在 WPF 应用程序中从工具箱中创建 DataGrid、ListBox 和 ListView 控件时,设计时示例数据现在将被默认添加。要禁用这种行为,请取消勾选"在元素创建时自动添加样本数据",在工具->选项->XAML 设计器下。


  • 要了解更多关于样本数据的信息,请访问样本数据文档。


改进的 XAML 绑定体验


  • 微软做了很多改进,使数据绑定变得快速和简单,比如从属性检查器快速访问数据绑定对话框,能够从快速操作中设置绑定,能够在数据绑定对话框中选择要绑定的属性。


- EOF -


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

云顶新耀宣布其合作伙伴Providence Therapeutics Holdings Inc.的mRNA新冠候选疫苗PTX-COVID19-B在评估其安全性、耐受性和免疫原性的II期研究中取得了积极的顶线结果。云顶新耀...

关键字: VI OV IDE CE

上海2022年9月23日 /美通社/ -- 富士胶片株式会社荣誉宣布,在由美国工业设计师协会(IDSA)主办的设计大奖、2022国际设计卓越奖"IDEA奖"(International Design...

关键字: EMI IDE 富士 变焦

拥抱国际合作新机遇 上海2022年9月8日 /美通社/ -- 9月1日, 作为2022中国国际服务贸易交易会"北京主题日"三大单元之一,2022北京"两区"建设国际合作...

关键字: NI IDE AN BSP

美国罗克维尔和中国苏州2022年9月5日 /美通社/ -- 信达生物制药集团(香港联交所股票代码:01801),一家致力于研发、生产和销售肿瘤、自免、代谢、眼科等重大疾病领域创新药物的生物制药公司,宣布:胰高血糖素样肽-...

关键字: IDE TI GO OV

(全球TMT2022年8月18日讯)数字解决方案公司Marlabs Inc.宣布,在"ISG Provider Lens™ MarTech Services 2022 Research"的六个类别评选中,...

关键字: ABS LAB TE IDE

东京2022年7月22日 /美通社/ -- 株式会社山本耀司(YOHJI YAMAMOTO Inc.)于2022年7月20日(周三)在网络平台上推出了概念性项目"WILDSIDE YOHJI YAMAMOTO&...

关键字: IDE MOTO PS COM

美国旧金山和中国苏州2022年7月19日 /美通社/ -- 信达生物制药集团(香港联交所股票代码:01801),一家致力于研发、生产和销售肿瘤、自免、代谢、眼科等重大疾病领域创新药物的生物制药公司,今日宣布:胰高血糖素样...

关键字: IDE TI 血糖 HB

厦门2022年7月8日 /美通社/ -- 希尔顿集团福建区域5家酒店将于7月9日联袂举办2022时尚婚礼发布秀。此次婚礼发布秀由厦门康莱德酒店联合厦门华尔道夫酒店、厦门磐基希尔顿酒店、厦门海沧正元希尔顿逸林酒店以及厦门希...

关键字: BSP 多功能厅 IDE LED屏幕

广州2022年7月8日 /美通社/ -- 2022年中国(广州)国际建筑装饰博览会在广交会展馆和广州保利世贸展馆正式开幕,全球家具五金行业领导者德国海蒂诗携Hettich on tour“空间魔盒”全国巡展车及最新“中国...

关键字: TI IC IDE TOP

(全球TMT2022年6月22日讯)软通动力ISSCloud多云管理系统被收录进CNCF Landscape的"Scheduling & Orchestration"版块之中,这是继通过 KCSP(Kubern...

关键字: LANDSCAPE IDE NET RATIO

CPP开发者

233 篇文章

关注

发布文章

编辑精选

技术子站

关闭