试用GitHub Copilot一周后,我给你的建议是:不要使用它
如果你還不知道“GitHub Copilot”,它是GitHub推出“AI程序員”插件,可以根據(jù)你在VS Code輸入的部分代碼或注釋,自動(dòng)生成完整的代碼。在我上次的文章中,演示了GitHub Copilot是如何工作的。
剛開(kāi)始,我對(duì)能夠試用GitHub Copilot感到很興奮:“哇,太棒了!可以自動(dòng)生成代碼,好厲害!”
但是,隨著它的負(fù)面消息出現(xiàn),我也開(kāi)始深思,它真的是一個(gè)好工具嗎?
在仔細(xì)研究過(guò)它的“常見(jiàn)問(wèn)題”后,我得出了3點(diǎn)不建議你使用的理由:
1.可能讓你承擔(dān)法律責(zé)任
如果你將生成的代碼放入商業(yè)軟件中,你有可能會(huì)被起訴侵權(quán)。
因?yàn)橹耙延行侣剤?bào)道過(guò),Copilot原樣復(fù)制了經(jīng)典射擊游戲《雷神之錘》里的代碼,因此給你的代碼也可能是受版權(quán)保護(hù)的。
你可能會(huì)說(shuō),“只復(fù)制了0.1%的代碼啊”。
那你可以回顧一下甲骨文對(duì)谷歌的侵權(quán)訴訟,爭(zhēng)議的焦點(diǎn)在于一個(gè)名為rangeCheck的函數(shù)上。在甲骨文測(cè)試的共1500萬(wàn)行代碼中,只有這一個(gè)是被“完全復(fù)制”的,雷同到每一個(gè)字母。
雖然最后谷歌勝訴了,但誰(shuí)能保證同樣情況下你也能呢?
2.你的代碼可能被泄露
當(dāng)然,你的代碼會(huì)被上傳并存儲(chǔ)和分析。但是除此之外,居然還有人可以閱讀你的代碼?!
問(wèn)題在于,我們根本不確定哪些內(nèi)容被上傳了。
好消息是,他們不會(huì)和其他用戶共享你的私人代碼——至少他們是這么說(shuō)的。
3.代碼質(zhì)量堪憂
Copilot自己也承認(rèn)了,這意味著建議代碼可能并不總是有效,畢竟訓(xùn)練集來(lái)自公共代碼,良莠不齊;甚至完全沒(méi)有意義,就像我在試用時(shí)看到的那樣:?
過(guò)去,從Stack Overflow復(fù)制和粘貼代碼,起碼你還必須付出一些努力去查找和篩選,才能獲得正確的代碼。
現(xiàn)在,代碼已經(jīng)放到你碗里了,就像用谷歌翻譯后的中文,你還愿意做到認(rèn)真審查嗎?
結(jié)論
總而言之,如果將GitHub Copilot用于實(shí)際工作,我不認(rèn)為這是一個(gè)好主意。
“不要單飛”暫時(shí)還不太可能,至少不要和GitHub Copilot一起飛。
如果覺(jué)得這篇文章對(duì)你有所啟發(fā),請(qǐng)關(guān)注我的個(gè)人公眾號(hào)”My IO“,記住我!
總結(jié)
以上是生活随笔為你收集整理的试用GitHub Copilot一周后,我给你的建议是:不要使用它的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 实名羡慕,国内这些厂.NET薪资高的吓人
- 下一篇: C#网络类智能开关控制板实例