首页 > 其他分享 >【译】我为 .NET 开发人员准备的 2023 年 Visual Studio 10 大新功能

【译】我为 .NET 开发人员准备的 2023 年 Visual Studio 10 大新功能

时间:2024-02-16 09:03:14浏览次数:32  
标签:10 开发人员 C# Copilot Visual Studio 2023 NET

原文 | James Montemagno

翻译 | 郑子铭

Visual Studio 2022 在 2023 年发布了许多令人难以置信的功能,为 .NET 开发人员提供了大量新工具来提高他们的工作效率。有这么多可供选择,我精心挑选了一个包括编辑器改进、生产力更新和人工智能辅助的选项。让我们来探讨一些最有影响力的功能,这些功能已成为我日常开发流程中不可或缺的一部分。

1. 开发隧道

对于需要将本地开发服务器暴露到互联网的开发人员来说,开发隧道是一个游戏规则改变者。它提供了一个直接通过隧道连接到您的本地计算机的唯一 URL。对于移动开发等场景来说,此功能非常宝贵,您需要在各种设备上测试后端并让它们与本地服务器无缝通信。

  • 使用唯一的 URL 公开您的本地主机开发服务器。
  • 对于移动开发很有用,允许设备连接到本地计算机。

Securely test and debug your web apps and webhooks with dev tunnels | OD121

2. HTTP 文件和端点资源管理器

HTTP 文件和 Endpoint Explorer 是一个动态组合,可以增强 Visual Studio 中的 API 开发和测试。每当您创建 Web API 时,它都会添加一个 HTTP 文件,您可以在其中发出请求并查看实时响应。端点资源管理器对此进行了补充,它提供应用程序中所有活动端点的可视化表示,允许您生成请求并简化工作流程。

  • HTTP 文件允许您使用实时请求和响应与 Web API 进行交互。
  • Endpoint Explorer 提供了一个可视化工具来查看所有 API 端点并与之交互。

3. GitHub Copilot 和 GitHub Copilot 聊天

GitHub Copilot 和 Copilot Chat 对于寻求 AI 支持的开发人员来说非常出色。 Copilot 在您键入时建议代码片段,使用应用程序的上下文来提供相关建议。 Copilot Chat 允许您与 AI 进行交流,以获得有关编码挑战的更详细的帮助。

  • GitHub Copilot 实时提供代码建议。
  • Copilot Chat 可与 AI 对话以获取编码帮助。

4.Git 和 PR 增强

Visual Studio 2022 在集成的 Git 功能方面取得了重大进展,简化了代码提交和协作过程。开发人员现在可以直接从 IDE 执行 Git 任务,例如创建分支、提交和拉取请求,从而简化了代码存储库管理的过程。

  • 使用集成 UI 创建和管理 Git 存储库。
  • Link 致力于 GitHub 问题以实现更好的协作。
  • Visual Studio 中内置拉取请求创建和审查。

5. 大括号着色

此功能通过用独特的颜色区分大括号对,为您的代码增添一抹色彩。这个小而强大的功能可以通过更轻松地在视觉上匹配左大括号(尤其是在嵌套结构中)来显着提高代码可读性。

  • 颜色区分不同嵌套级别的支撑对。
  • 提高可读性并有助于快速识别匹配对。

6. 拼写检查

Visual Studio 2023 中我最期待的编辑器改进之一是内置拼写检查器。这是一个方便的工具,可以让我避免在职业生涯早期犯下的一个臭名昭著的拼写错误,在整个源代码中我拼错了“shield”,直到它被抓到为止。该拼写检查器的工作原理与 Word 或 Google Docs 等文字处理程序中的拼写检查器类似,并且可以轻松打开和关闭。只需在工具栏中查找带有复选标记的“ABC”图标即可。

怎么运行的

  • 拼写检查器会检测拼写错误的单词,并用蓝色曲线在它们下划线。
  • 您可以选择忽略建议、禁用拼写检查或从上下文菜单中将拼写错误的单词替换为正确的单词。
  • 拼写检查器对于保持代码注释和字符串文字的准确性非常有益。
  • 通过创建要在 .editorconfig 文件中排除的自定义单词词典来进行自定义。

7. 辅助功能检查器

创建可访问的应用程序势在必行,而 Visual Studio 的新辅助功能检查器使这项任务变得更加容易。该工具可帮助开发人员识别并修复应用程序中常见的可访问性问题,确保每个人都可以使用它们。

怎么运行的

  • 开始调试您的 WPF 应用程序,然后单击“扫描辅助功能问题”以运行检查器。
  • 该工具将突出显示任何可访问性错误,例如空属性名称,允许您直接从结果中修复它们。

Make accessible XAML apps in Visual Studio

8..NET Aspire 支持

Visual Studio 2023 引入了 .NET Aspire 编排,这是一项简化云原生开发的预览功能。通过在 Visual Studio 中集成 .NET Aspire 工具,开发人员可以快速构建云就绪的解决方案,集成运行状况检查、服务发现和弹性。

入门

  • 您可以从提供的模板创建新的 .NET Aspire 项目
  • 将 Aspire 组件添加到现有项目中。
  • 模板设置提供对服务默认值、跟踪指标等的支持。

9. 界面刷新

UI 刷新绝对令人赏心悦目,它带来了微妙的更新,提升了整体用户体验。刷新包括更现代的 UI 元素,如浮动选项卡和圆角半径,以及新主题。

10. Visual Studio Code 的 C# 开发工具包

C# 开发工具包借用了 Visual Studio 中的一些熟悉的概念,为 VS Code 带来更高效、更可靠的 C# 体验。无论您是快速编辑 C# 文件、学习 C# 还是调试后端 API,这种方法都能确保您获得良好的体验。 C# 开发工具包由一组 VS Code 扩展组成,这些扩展共同提供丰富的 C# 编辑体验、AI 驱动的开发、解决方案管理和集成测试。如下图所示,C# Dev Kit 包含:
[C# 扩展](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.c- sharp)提供基本语言服务支持,并继续独立于此项工作进行维护。

Packing light with VS Code and the C# Dev Kit | .NET Conf 2023

概括

Visual Studio 2022 有很多值得喜爱的功能,您最喜欢的功能是什么?让我们在评论中知道!要更深入地了解其中任何一个,您可以查看 Visual Studio 博客,这是了解最新功能的绝佳资源。想看看其中一些功能的实际应用吗?看看我的前 10 名视频

My Top 10 NEW Visual Studio Features of 2023

请继续关注更多更新和快乐编码!

人工智能辅助内容。本文部分是在人工智能的帮助下创建的。作者根据需要审查并修改了内容。了解更多

原文链接

My Top 10 NEW Visual Studio Features of 2023 for .NET Developers

知识共享许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

如有任何疑问,请与我联系 ([email protected])

标签:10,开发人员,C#,Copilot,Visual,Studio,2023,NET
From: https://www.cnblogs.com/MingsonZheng/p/18015368

相关文章

  • 写给2024(2.10)
    今天之后就进入了新的一年。去年的上半年算是糊糊涂涂过去的,六月份军训结束状态好了一些,至少心里有想去的地方了。下半年转专业到了计算机系,刚开学那段时间每天背着游戏本和一千多页的java编程思想,四处找空教室自习,偶尔被社团办活动的请出去。因为笔记本老没电,开始寻找插......
  • Go 100 mistakes - #26: Slices and memory leaks
        Asaruleofthumb,rememberthatslicingalargesliceorarraycanleadtopotential highmemoryconsumption.Theremainingspacewon’tbereclaimedbytheGC,and wecankeepalargebackingarraydespiteusingonlyafewelements.Using......
  • Go 100 mistakes - #25: Unexpected side effects using slice append
        ......
  • 洛谷 P9912 [COCI 2023/2024 #2] Zatopljenje 题解
    首先发现区间中的个数等于\(\texttt{高度大于x的位置的个数}-\texttt{连续两个位置都是大于x的位置的个数}\)。具体令\(H_i=\min(h_i,h_{i+1})(i\in[1,n-1])\),那么对于一次询问答案\(ans=\sum\limits_{i=l}^{r}[h_i>x]-\sum\limits_{i=l}^{r-1}[H_i>x]\),其......
  • 【2023年10月多校联训B层联赛2】 珠子 &&【October 2023 Multi-School League B Tier
    第一次用英语,见谅。为什么用英语?```Dev里懒得换输入法。```Link\(\textbf{gxyzoj\#3358}\)\(\textbf{LuoguU406794}\)DescriptionFhas\(n\)beadsarrangedinasequence,eachofwhichhasacolor,andatotalof\(m\)colors,numbered\(1,2,3,\cdots,......
  • Go语言的100个错误使用场景(40-47)|字符串&函数&方法
    目录前言5.字符串5.5无用的字符串转换(#40)5.6获取子字符串操作和内存泄漏(#41)6.函数和方法6.1不知道选择哪种类型的方法接受者(#42)6.2从来不使用命名的返回值(#43)6.3使用命名返回值造成的意外副作用(#44)6.4返回一个nil接受者(#45)6.5使用文件名作为函数的输入(#46)6.6不理解de......
  • 2023.2.15 LGJ Round
    A\(n\)个点,有\(m\)种操作\((w,l,r)\),代表贡献是\(w\),并消除\([l,r]\)的所有点。操作的条件是必须消除一个点,问最多的贡献是多少。\(n,m\le300\).考虑从小区间开始操作,不难联想到区间dp。\(dp_{i,j}\)代表\([l,r]\)都被消除的最大贡献。对于\(dp_{i,j}\),我们枚举......
  • Go 100 mistakes - #21: Inefficient slice initialization
          ConvertingoneslicetypeintoanotherisafrequentoperationforGodevelopers.As wehaveseen,ifthelengthofthefuturesliceisalreadyknown,thereisnogoodreasontoallocateanemptyslicefirst.Ouroptionsaretoallocat......
  • P10111 [GESP202312 七级] 纸牌游戏
    原题链接思路1.任意一轮出牌,只有三种选择2.每一轮的得分只与当前一轮出的牌和上一轮出的牌相关由此我们可以设\(dp[i][j]\)为第\(i\)轮,出牌\(j\)的得分3.由于扣分机制,扣的分数与扣的次数有关,所以我们再加一层\(dp\)代表扣的次数code,注意细节#include<bits/stdc++.......
  • PAT乙级-1009(说反话)
    给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。......