- AI輔助編程Python實(shí)戰(zhàn):基于GitHub Copilot和ChatGPT
- (美)利奧·波特 (加)丹尼爾·津加羅
- 881字
- 2025-03-13 18:31:22
2.1.1 編程環(huán)境與軟件概覽
為了更好地設(shè)置和使用Copilot,我們將會(huì)安裝一些無(wú)論是初學(xué)者還是專業(yè)工程師都會(huì)用到的軟件編輯工具。這些工具包括GitHub Copilot、Python及Visual Studio Code。當(dāng)然,如果你已經(jīng)安裝了所有這些工具,也可以直接跳轉(zhuǎn)到2.5節(jié)。
1. GitHub Copilot
GitHub在開發(fā)、維護(hù)和存儲(chǔ)軟件代碼領(lǐng)域已是“行業(yè)標(biāo)準(zhǔn)”級(jí)別的工具。不過我們?cè)诒緯胁⒉粫?huì)用到GitHub。注冊(cè)GitHub的唯一原因是你需要一個(gè)可以訪問Copilot的賬號(hào)。雖然注冊(cè)GitHub賬號(hào)是免費(fèi)的,但在撰寫本書時(shí),Copilot還是一項(xiàng)收費(fèi)服務(wù)。如果你是學(xué)生,可以免除這筆費(fèi)用。如果你不是學(xué)生,截至撰寫本書時(shí),你可以享受30天的免費(fèi)試用。
你可能會(huì)質(zhì)疑為什么需要為這項(xiàng)服務(wù)支付費(fèi)用,其實(shí)答案也很合理。訓(xùn)練GPT-3模型的成本極高(想象一下,需要成千上萬(wàn)臺(tái)計(jì)算機(jī)運(yùn)行一年時(shí)間才能訓(xùn)練出這個(gè)模型),并且模型在提供推理服務(wù)時(shí)也會(huì)產(chǎn)生成本(大量服務(wù)器接收用戶的輸入,運(yùn)行模型來(lái)處理這些輸入,并且生成用戶所需的結(jié)果)。如果你對(duì)于是否要長(zhǎng)期使用Copilot還有些猶豫,那不妨在試用期開始后的25天左右設(shè)一個(gè)日歷提醒,如果到時(shí)仍沒有使用Copilot,取消訂閱就好。反之,如果你已經(jīng)利用Copilot成功學(xué)會(huì)編程,并且它正在提升你的工作效率或成為你的一個(gè)愛好,就繼續(xù)使用它。
2. Python
事實(shí)上,本書適用于任何一種編程語(yǔ)言,但我們選擇了Python,因?yàn)樗侨蜃盍餍械木幊陶Z(yǔ)言之一,并且是我們?cè)诖髮W(xué)的編程入門課程中所要學(xué)習(xí)的語(yǔ)言。如第1章所述,與其他語(yǔ)言相比,Python更加易于閱讀、理解和編寫。本書中,生成代碼的任務(wù)主要由Copilot來(lái)完成,而不是你。盡管如此,你仍然需要閱讀和理解Copilot生成的代碼,而Python在這方面尤其合適。
3. Visual Studio Code
你可以使用任何文本編輯器來(lái)編程。但如果你正在尋找一個(gè)舒適的編程環(huán)境——既能寫代碼,又能輕松獲得Copilot的建議,還可以運(yùn)行代碼,那么Visual Studio Code(簡(jiǎn)稱VS Code)是首選。VS Code不僅受到軟件開發(fā)新手的歡迎,也經(jīng)常獲得學(xué)生群體的青睞[1]。它同樣被世界各地的專業(yè)軟件工程師所使用,這意味著你在完成本書的學(xué)習(xí)之后,可以繼續(xù)使用這一環(huán)境進(jìn)行工作或進(jìn)一步學(xué)習(xí)。
為了配合本書的使用,你需要安裝幾個(gè)插件(extension,亦稱擴(kuò)展程序),以便讓VS Code支持Python編程,并啟用Copilot。值得一提的是,VS Code的插件機(jī)制非常強(qiáng)大,安裝這些插件也非常簡(jiǎn)單。
- Visual C++程序設(shè)計(jì)教程
- Oracle Database In-Memory(架構(gòu)與實(shí)踐)
- Learning Data Mining with Python
- Neo4j Essentials
- Instant RubyMotion App Development
- Mastering Android Game Development
- Spring Boot+MVC實(shí)戰(zhàn)指南
- SQL Server 2016 從入門到實(shí)戰(zhàn)(視頻教學(xué)版)
- 軟件體系結(jié)構(gòu)
- DevOps 精要:業(yè)務(wù)視角
- OpenStack Sahara Essentials
- C++ Game Development Cookbook
- C#編程魔法書
- Mastering Web Application Development with Express
- R語(yǔ)言編程:基于tidyverse