国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

在 Visual Studio 2022 中使用 GitHub Copilot chat

這篇具有很好參考價值的文章主要介紹了在 Visual Studio 2022 中使用 GitHub Copilot chat。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本文通過實際應用場景和示例代碼展示了 GitHub Copilot Chat 在 Visual Studio 2022 中的優(yōu)勢和特點。最后,鼓勵讀者在實際工作中嘗試使用 Copilot Chat,以提升開發(fā)效率和代碼質量。希望這些信息和經(jīng)驗能為你在使用GitHub Copilot時提供幫助和啟發(fā)。

1. 背景

近年來,GitHub Copilot 的問世為軟件開發(fā)領域帶來了新的可能性。作為一款智能編程工具,它極大地提高了開發(fā)者的編程效率。為了更深入了解和掌握 GitHub Copilot 的使用技巧,我參加了一場名為“GitHub Copilot開發(fā)者訓練營”的活動。

在 Visual Studio 2022 中使用 GitHub Copilot chat

2. 活動回顧

北京的線下場是在北京微軟大廈故宮會議室,這也是我第一次到微軟大廈。

在 Visual Studio 2022 中使用 GitHub Copilot chat

本次活動可謂是收獲滿滿,會議中幾位老師,分享了 GitHub Copilot 使用技巧和最佳實踐,并做了實操的演示。我們探討了 GitHub Copilot 如何幫助開發(fā)者提高開發(fā)效率、助力創(chuàng)新以及彌補技能差距。通過使用 GitHub Copilot,開發(fā)者可以專注于解決關鍵和實際問題,加快原型創(chuàng)建,輕松學習新技術,從而提高生產(chǎn)力。此外,徐磊老師列舉了 10 個 AI 在編程場景中表現(xiàn)出色的例子,展示了AI如何在各種編程任務中取得優(yōu)異成果,包括正則表達式編寫、編寫測試代碼、使用難以記憶的關鍵字等。GitHub Copilot 作為一款智能編程工具,具有很大的潛力,能夠幫助開發(fā)者提升開發(fā)效率和代碼質量。

在 Visual Studio 2022 中使用 GitHub Copilot chat

當然,也有一些稍微的小遺憾。我們胖胖的盧老師竟然在上海,不過能在線下看到徐磊老師也是非常棒的。另一個遺憾,大概是沒有趕上會前的拍照吧。因為上午幫我的大朋友搶六一兒童節(jié)的玩具,誤入了美術館,然后就看了一上午的美輪美奐的藝術品,流連忘返,誤了飯點。等到會議地點,已是正式開始的時間了??戳藭h相冊,我猜是早到有單獨拍照的環(huán)節(jié)??上Я?,上面只能單獨放一個展板咯。

在會議中,主要介紹了 Copilot 的功能,并展示了如何在 VS Code 中使用 Copilot Chat。結合 GitHub 的 Codespaces,我們可以在完全云端的開發(fā)環(huán)境中體驗到非常便捷和高效的編程過程。然而,如何在被譽為地表最強的IDE —— Visual Studio 中使用 Copilot chat 呢?接下來,就讓我們一起探討一番。

3. 啟用 Copilot Chat

3.1 確認權限

Copilot Chat 屬于 GitHub Copilot X 中的一項能力,采用 OpenAI GPT-4,關于它的介紹可以前往 https://github.com/features/preview/copilot-x?WT.mc_id=DT-MVP-5005195 查看。

其當前還是預覽狀態(tài),如果想使用該功能,首先你需要確保你已經(jīng)注冊并擁有了 Github Copilot 的權限:https://github.com/features/copilot/?WT.mc_id=DT-MVP-5005195

對于普通用戶,可以試用 Copilot 一個月。當確認你擁有 Copilot 的使用權限后,你可以通過這里提交預覽功能的訪問申請:https://aka.ms/GHCopilotXPPSignup?WT.mc_id=DT-MVP-5005195。

提交申請后,等待審核,審核結果會發(fā)送到你的郵箱,當你收到《Welcome to the Copilot chat private beta!》的郵件就意味著你可以使用 Copilot chat 了。

在 Visual Studio 2022 中使用 GitHub Copilot chat

3.2 安裝插件

在 Visual Studio 2022 中安裝 Copilot Chat 擴展非常簡單,只需要在擴展管理搜索 github 選擇 Visual Studio Extension for GitHub Copilot Preview 即可。

在 Visual Studio 2022 中使用 GitHub Copilot chat

你也可以直接前往 Marketplace下載,完成后直接打開安裝即可。

安裝完成后,需要確保你已經(jīng)在 Visual Studio 中登錄了 Github 賬戶。如果你對對這一步操作不熟悉,可以前往幫助查看:在 Visual Studio 中使用 GitHub 帳戶。

若操作沒有問題,你就可以在頂部菜單的視圖中找到 Copilot Chat

在 Visual Studio 2022 中使用 GitHub Copilot chat

4. 使用體驗

據(jù)說是與 Copilot 的溝通使用英文會更好,但是,當我看到 Copilot Chat 在 Visual Studio 中的界面后,我完全可以放心他的中文理解能力了:

在 Visual Studio 2022 中使用 GitHub Copilot chat

4.1 如何交互

和 Copilot chat 的交互有兩種方式,除了可以通過打開的常駐對話框窗口外,你也可以通過右鍵菜單呼出對話浮窗(默認快捷鍵 Alt + /)。

在 Visual Studio 2022 中使用 GitHub Copilot chat

對于對話相關的代碼,你可以通過光標定位到某一行代碼,某一個類或者方法的開通結尾,當你激活對話框時,一個粉色的框會提示你當前對話相關的代碼區(qū)域,當然你也可以選擇相關區(qū)域后通過右鍵呼出:

在 Visual Studio 2022 中使用 GitHub Copilot chat

4.2 分析當前異常

除了前面兩種交互形式,在當程序調試出現(xiàn) BUG 的時候,你也可以通過異常面板中“Copilot AI Assistant”快捷的詢問解決方案:

在 Visual Studio 2022 中使用 GitHub Copilot chat

這里為了演示,我修改了正常項目的代碼,讓其出現(xiàn)了一個生命周期的相關異常。當你點擊了 “Copilot AI Assistant” 其動作其實就是在對話框輸入“Analyze the current exception”:

在 Visual Studio 2022 中使用 GitHub Copilot chat

通過上面 Copilot chat 的回復結果我們會發(fā)現(xiàn),這里回復是英文的。熟悉 GPT 的同學應該清楚,AI 的回復會根據(jù)你提示的語言進行調整(畢竟不可見的輸入中給 AI 輸入了大量的英文報錯信息)。不過,在我再次詢問“程序當前的錯誤是怎么回事”時,他回復卻耐人尋味了起來:

在 Visual Studio 2022 中使用 GitHub Copilot chat

當然,他的限制是必要的,畢竟他是作為一個編程伙伴。對于他對不理解我口語化的描述,我似乎也有些理解,就像 MOSS 的警告:禁止使用比喻,反問,暗示。

這里有個小技巧,當你的程序報錯時,你可以這樣提問得到中文的錯誤分析:“分析當前異常,使用中文回復”

在 Visual Studio 2022 中使用 GitHub Copilot chat

4.3 簡單的測試

接下來我們簡單的進行幾個測試,感受一下 Copilot chat 帶來的一些便利。當然,AI 在許多編程場景可以完全碾壓人類,更多功能還需要大家自行去探索。唯一可以確定的是,以后編程基本可以脫離搜索引擎,享受到更高效的開發(fā)體驗了。

4.3.1 對話式編程

有了 Copilot chat ,其實我們完全可以通過不斷的與其聊天對話,完成我們的開發(fā)工作。接下來我嘗試讓其幫我創(chuàng)建一個微信用戶對象,用來存儲到數(shù)據(jù)庫:

在 Visual Studio 2022 中使用 GitHub Copilot chat

這里我們不需要苦惱給對象起名,也不用考慮要存什么字段。更重要的是,他是懂我們的微信的,這里生成的結果完全沒有問題。甚至于他可以直接通過快捷方式放到我的項目當中,無需我復制粘貼。

4.3.2 代碼解釋

我們會有需要讀源碼的場景,比如:接手新的項目,學習開源項目等。Copilot chat 的代碼解釋功能可以幫助我們節(jié)省大量的時間和精力,他可以在幾毫秒中給你結果。以下是我用來詢問他的一段代碼:

/// <summary>
/// 驗證來源
/// </summary>
/// <param name="msg_signature">微信的簽名</param>
/// <param name="timestamp">時間戳</param>
/// <param name="nonce">隨機字符</param>
/// <param name="echostr">加密的字符串</param>
/// <returns></returns>
public string VerifyURL(string msg_signature, string timestamp, string nonce, string echostr)
{
    // 微信加解密庫
    var wxcpt = new WXBizMsgCrypt(_wechat.Value.Token, _wechat.Value.EncodingAesKey, _wechat.Value.CorpId);

    // 接入驗證,需要輸出 EchoStr 的解密結果
    if (!string.IsNullOrWhiteSpace(echostr))
    {
        string sEchoStr = "";
        var ret = wxcpt.VerifyURL(msg_signature, timestamp, nonce, echostr, ref sEchoStr);
        if (ret != 0)
        {
            _logger.LogError("ERR: VerifyURL fail, ret: " + ret);
            return "";
        }
        return sEchoStr;
    }
    _logger.LogError("ERR: VerifyURL fail, empty echostr");
    return "";
}

以下是回復的內容:

這個函數(shù)是 VerifyURL。它有四個參數(shù):msg_signature,timestamp,nonce 和 echostr。這個函數(shù)的主要目的是用于驗證接口連接。
首先,這個函數(shù)會創(chuàng)建 WXBizMsgCrypt 的對象,該對象的實例用于微信消息的加解密。然后它會檢查 echostr 的值是否為非空,如果不為空,則需要將 echostr 的解密結果輸出。
為了完成解密過程,這個函數(shù)使用 wxcpt.VerifyURL(msg_signature, timestamp, nonce, echostr, ref sEchoStr) 方法,該方法返回一個 int 值。如果返回的不是 0,則表示解密失敗,函數(shù)會通過記錄日志輸出錯誤信息并返回空字符串。否則,將解密后的字符串 sEchoStr 返回。
如果 echostr 的值為空,則表示驗證失敗。函數(shù)會記錄一個錯誤日志信息并返回一個空字符串。
如果您需要進一步了解 WXBizMsgCrypt 和如何進行微信消息的加解密,請參考微信官方文檔。

在 Visual Studio 2022 中使用 GitHub Copilot chat

4.3.3 問題解答

首先我們看一段代碼:

public DbSet<MsgList> MsgLists { get; private set; }
public DbSet<CursorCache> CursorCache { get; set; }

這段代碼的第二行是 AI 生成的,前面寫的代碼我采用了 private set,這里我向其提問:這里采用 private set 和 set 有什么區(qū)別,哪個好?

這里 AI 的回復是非常準確的,詳細解釋了set和private set的訪問級別和用途。對于初學者,這無疑是非常有用的,他可以幫助你不斷提高編程水平。

set 和 private set 是兩種訪問器的訪問限定。 set 具有 public 的訪問級別,而 private set 只有類本身內部可以訪問。
當你使用 set 時,任何人都可以更改屬性的值。這意味著,如果屬性的值是不應該更改的,那么你應該使用 private set 而不是set。 這有助于保護對象不受不受控制的更改,并使代碼更加安全。
讓我們以 OnModelCreating 方法為例。這個方法只會在類內部中被訪問,而不會外部進行更改。因此,建議使用 private set 以保護代碼。

在 Visual Studio 2022 中使用 GitHub Copilot chat

4.3.4 提供優(yōu)化建議

同時,他也可以幫助你審查代碼,提供修改建議。當然,這里的小技巧依舊適用,后面記得跟上“使用中文回復”,否則大段的英文會讓他忘記問題的提出是中文了。

在 Visual Studio 2022 中使用 GitHub Copilot chat

4.4 編寫單元測試

單元測試是軟件開發(fā)過程中不可或缺的一部分,它可以幫助我們確保代碼的質量和功能的正確性。通過 Copilot chat ,可以幫助我們快速的創(chuàng)建單元測試,以下是其針對我的 minimal web API 項目生成的單元測試:

using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.TestHost;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Moq;
using System.Net.Http;
using System.Threading.Tasks;
using WeChatCustomerAzureOpenAI.WeChat;
using Xunit;

public class WeChatCustomerAzureOpenAITest
{
    private readonly TestServer _server;
    private readonly HttpClient _client;

    public WeChatCustomerAzureOpenAITest()
    {
        _server = new TestServer(new WebHostBuilder()
            .UseEnvironment("Development")
            .UseStartup<Startup>());
        _client = _server.CreateClient();
    }

    [Fact]
    public async Task Verify_WeChatURL()
    {
        //Arrange
        var url = "/wechatback?msg_signature=test&timestamp=0&nonce=0&echostr=123";
        //Act
        var response = await _client.GetAsync(url);
        //Assert
        response.EnsureSuccessStatusCode();
        var responseString = await response.Content.ReadAsStringAsync();
        var expectedString = "123";
        Assert.Equal(expectedString, responseString);
    }

    [Fact]
    public async Task Check_Decrypt_Msg()
    {
        //Arrange
        var sMsg = "123";
        var requestContent = new StringContent(sMsg);
        var context = new DefaultHttpContext();
        context.Request.ContentLength = requestContent.Headers.ContentLength;
        context.Request.Body = await requestContent.ReadAsStreamAsync();

        var wechat = new Mock<WechatServices>().Object;

        var mediator = new Mock<IMediator>().Object;

        var expectedString = sMsg;
        //Act
        var result = await _server.Host.GetService<WechatServices>().DecryptMsg(sMsg, It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>());
        await _server.Host.GetService<Mediator>().Publish(new UserBack(result));

        //Assert
        Assert.Equal(expectedString, result);
    }
}

在 Visual Studio 2022 中使用 GitHub Copilot chat

這里的單元測試,當然是不能直接使用的,但是他完成了一個從零到一的過程。通過不斷的對話調整,就會生成我們滿意的結果。

5. 最后

如果你對 Copilot 和人工智能感興趣并希望進一步了解,那么這里有一個 Microsoft Learn 的免費課程非常適合你:使用 GitHub Copilot 學習 AI。此系列視頻可以指導你進入 AI 領域,探索機器學習基礎知識、演示如何構建分類模型,然后介紹更高級的算法(稱為神經(jīng)網(wǎng)絡)及它們在計算機視覺中的應用。

最后,請牢記這句話:AI 本身不會取代你,但掌握 AI 技能的人可能會取代你。因此,希望大家能擁抱創(chuàng)新,嘗試新的工具,提高開發(fā)效率和代碼質量。讓我們共同期待 Copilot 等類似的 AI 工具不斷發(fā)展,助力更多開發(fā)者輕松應對編程挑戰(zhàn),編寫出更優(yōu)秀的軟件作品。文章來源地址http://www.zghlxwxcb.cn/news/detail-484632.html

到了這里,關于在 Visual Studio 2022 中使用 GitHub Copilot chat的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Visual Studio Code 1.77 發(fā)布,擴展的 GitHub Copilot 集成

    Visual Studio Code 1.77 發(fā)布,擴展的 GitHub Copilot 集成

    VS Code 1.77 已發(fā)布,此版本一些主要亮點包括: Accessibility 改進? - 用于懸停、通知和 Sticky Scroll 的新鍵盤快捷鍵。 、 down 、 home、 end、 page up 和 page down ?鍵來聚焦懸??丶⑦M行水平和垂直滾動。聚焦懸??丶逆I盤快捷鍵(Ctrl+K Ctrl+I)與用于在主光標位置顯示懸停的快捷鍵

    2024年02月09日
    瀏覽(24)
  • 進亦憂,退亦憂,Github Copilot 集成進入 Visual Studio 帶來的思考

    進亦憂,退亦憂,Github Copilot 集成進入 Visual Studio 帶來的思考

    開篇想到《岳陽樓記》的結尾: 未來30年的開發(fā)變革,與過去30年相比,是指數(shù)函數(shù)才能勉強描述的趨勢。有時候回想已經(jīng)過去的30年,確實有些恍惚和迷茫。AI的發(fā)展已經(jīng)到了一個拐點,無論是個人還是公司,如果不去主動擁抱新的變化,必然會被時代淘汰。 隨著 visual stu

    2024年02月04日
    瀏覽(19)
  • Visual Studio 2022如何安裝和使用MSDN

    Visual Studio 2022如何安裝和使用MSDN

    我是荔園微風,作為一名在IT界整整25年的老兵,在后臺收到提問,問我Visual Studio 2022如何安裝和使用MSDN,這個我之前也沒有在這個版本上裝過MSDN,我之前是在Visual Studio 2017版上裝過MSDN,那既然有人問了,我們就一起來探索一下吧。 MSDN全稱是 Microsoft Developer Network,你可以把

    2024年02月05日
    瀏覽(26)
  • Visual Studio 2022 使用監(jiān)視窗口查看變量的地址

    Visual Studio 2022 使用監(jiān)視窗口查看變量的地址

    通過在“監(jiān)視”窗口中,填寫變量的取地址表達式 var ,然后按 Enter 鍵以確認,從而在調試時來查看變量的地址。 References: 對變量設置監(jiān)視 - Visual Studio (Windows) | Microsoft Docs 教程:調試 C++ 代碼 - Visual Studio (Windows) | Microsoft Docs C++ Debugging and Diagnostics - C++ Team Blog (microsoft.com) 在

    2024年02月13日
    瀏覽(34)
  • Visual Studio 2022 安裝并使用 Google Test

    Visual Studio 2022 安裝并使用 Google Test

    1.打開你需要進行單元測試的項目,右鍵項目 2.選擇管理NuGet程序包(Manage Nuget Packages) 3.在管理器界面中,選擇瀏覽(browse) 搜索Google Test,找到后點擊安裝(install) Lib 路徑: $(SolutionDir)packagesgoogletest.1.8.3buildnativelib$(PlatformTarget)v141$(Configuration) 里面有宏,理論上會通用所有人,可根

    2024年02月09日
    瀏覽(20)
  • Visual Studio2022 使用git進行代碼版本管理

    Visual Studio2022 使用git進行代碼版本管理

    存儲庫位置: 就是自己創(chuàng)建的Git倉庫的位置,例如,我的遠程倉庫在Gitee上面,找到遠程倉庫要下載的項目,點克隆,把HTTPS 路徑復制,粘貼到存儲庫位置。 路徑: 克隆下來的項目,存儲在本地倉庫的目錄(本地倉庫) 拉取和提取的區(qū)別: 拉取: 如果當前存在 未同步的代碼

    2024年02月08日
    瀏覽(20)
  • 使用 Visual Studio 2022 開發(fā) Linux C++ 應用程序

    使用 Visual Studio 2022 開發(fā) Linux C++ 應用程序

    前置條件: Windows上需要先安裝 WSL2,方法見: Install WSL | Microsoft Docs 在 WSL2 中依次執(zhí)行如下命令,進行安裝如下必需軟件: Visual Studio 2022 引入了用于 Linux C++ 開發(fā)的本機 WSL2 工具集,可以構建和調試 Linux C++ 代碼,并提供了非常好的 Linux 文件系統(tǒng)性能、GUI 支持和完整的系統(tǒng)

    2024年02月05日
    瀏覽(38)
  • Visual Studio 2022 右鍵單擊項目沒有出現(xiàn)View | View Class Diagram(Visual Studio 無法使用類設計器)

    Visual Studio 2022 右鍵單擊項目沒有出現(xiàn)View | View Class Diagram(Visual Studio 無法使用類設計器)

    當我們在Solution Explorer窗口右鍵單擊項目時,快捷菜單中沒有出現(xiàn)“查看”,或者出現(xiàn)了“查看”,但是“查看”里沒有View Class Diagram。 首先你要確保你安裝了類設計器。 其次就與你的項目有關了,類設計器不是所有項目都可以用滴。 類設計器在.NET Core項目中是無法使用的

    2024年02月11日
    瀏覽(28)
  • Visual Studio 2022 從下載安裝到如何使用的全面講解 (圖文詳解)

    Visual Studio 2022 從下載安裝到如何使用的全面講解 (圖文詳解)

    ?? 鴿芷咕 :個人主頁 ??? 個人專欄 :《C語言初階篇》 《C語言進階篇》 ??生活的理想,就是為了理想的生活! ?? ?? hello! 各位寶子們大家好啊,相信很多C語言的初學者,都在為學C語言用那個軟件而發(fā)愁! ?? ?? 那么今天就給大家推薦這款軟件, Visual Studio 202

    2024年02月16日
    瀏覽(49)
  • Visual Studio 2022使用MinGW來編譯調試C/C++程序

    Visual Studio 2022使用MinGW來編譯調試C/C++程序

    Visual Studio的新版本已經(jīng)可以像VSCode一樣創(chuàng)建CMake項目了,但是默認的情況下是使用的Visual Studio編譯器及調試器不包括MinGW中的工具集,參見下面的默認可選工具集: 本文就以實例來簡單介紹一下VS2022中如何使用MinGW來編譯、調試C/C++程序。 本文鏈接地址:https://blog.csdn.net/wi

    2023年04月08日
    瀏覽(75)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包