今年3月,我们宣布了 Visual Studio 2022 的 GitHub Copilot Chat。通过 Chat, Copilot 已经超越了代码补全,提供了对代码工作原理的深入分析和解释。它支持单元测试的生成,甚至帮助修复 bug 和解释异常。通过从 Visual Studio 收集有用的上下文数据,Copilot Chat 可以帮助您形成很好的问题,以获得有用的答案。将 GitHub Copilot 与 Visual Studio 一起使用,可以减少在样板手动任务(boilerplate manual tasks)和诊断上花费的时间,从而为您提供更多的创造力。
现在,我们与 Visual Studio 的深度集成更近了一步。使用交互式代码助手(Code Assistant)视图,您可以通过 Copilot Chat 无缝地改进您的代码,而无需离开舒适的编辑器窗口。你的工作流程是不间断的——没有更多的来回到聊天窗口!开始使用“ask Copilot”在你的代码文件的任何你想工作或提出问题的地方,并看到答案内联与他们相关的代码。每当 Copilot 建议代码更改时,您都会看到您的代码与 Copilot 的建议并排,即常见的 Visual Studio diff 视图模式,以帮助您在应用到代码之前以自己的节奏检查,纠正和完善所建议的内容。我们已经小心翼翼地确保您始终坐在驾驶员的座位上,在整个过程中完全控制。
看看下面的视频,看看 Copilot 的交互式代码助手是如何工作的:
使用 Copilot 增强诊断
当你在 Visual Studio 中调试时,团队也在努力把 Copilot Chat 带到更多的地方。下面的三个特性说明了其中的一些工作。
CPU 使用情况自动洞察和分析器
分析器可以通过提供应用程序的执行时间和 CPU 使用情况的可视化描述,帮助您快速做出明智的决策。Copilot 现在通过 CPU Usage auto insights 为您提供详细信息。它现在为特定的方法和属性,包括 Enum.HasFlag, Enum.ToString, String.StartsWith, ConcurrentDictionary.Count 等提供了更详细的信息和见解。使用 Copilot,您可以询问代码中已确定的热路径上(热代码路径定义为经常调用并形成大量执行时间的代码路径,热代码路径通常会限制应用横向扩展和性能)的函数,这可以帮助您生成更高效或高性价比的代码。只需点击“Ask Copilot”即可开始探索。
Copilot Exception Helper
当您调试代码时,Copilot 可以为您提供有意义的帮助。例如,当抛出异常时,您就有机会开始提出问题。Copilot 可以访问异常、调用堆栈、局部变量和代码。当你处于异常状态时,根据 Visual Studio 拥有的数据的正确部分提出问题,Copilot Chat 可以为问题提供有用的见解和修复方法。
Debugger “Rubber Ducking”(橡皮鸭调试法)
Copilot 现在可以理解调用栈、帧、变量名和值。这意味着您可以向调试器感知的 Copilot 提出详细的问题。
看看下面的视频,看看它是如何工作的:
我如何获得这些 Copilot Chat 预览功能?
如果您已经在我们的预览程序,只需更新到 Visual Studio 最新版本的 GitHub Copilot Chat 预览,就可以看到这些新功能。
如果没有,您仍然可以注册私有预览。
我们想听听您的意见!
我们非常感谢您提供的所有反馈,到目前为止,我们一直在创建 Copilot Chat,并兴奋地看到下一波人工智能辅助生产力将带您创建伟大的软件。请尝试新功能并分享您的反馈——只需使用 Visual Studio“报告问题”向我们发送您对 Visual Studio 中 GitHub Copilot Chat 的建议、反馈和问题。
原文链接:https://devblogs.microsoft.com/visualstudio/simplified-code-refinement-and-debugging-with-github-copilot-chat/