使用AI輔助寫代碼

市面上的AI寫代碼

GitHub +OpenAI 出品的Copilot:https://copilot.github.com/

Tabnie:Code Faster with AI Code Completions | Tabnine

Kite:https://github.com/kiteco,2022.11.16已停止服務

Machine Learning Code Completion:jetbrains系列自帶的插件


支持工具:jetbrains全系列,vs/vscode,也就是常見的編程工程都支持

支持語言:目前常見的編程語言都支持

網易自研的

網易自研的CodeMaker:CodeMaker 智能開發平臺 (netease.com)

網易自研的AIRCoder:https://aircoder.netease.com/


AI輔助寫代碼

適用場景

  • 一些常用的接口和代碼邏輯,自動補全
  • 可以根據寫註釋、或者註釋+函數名,自動補全
  • 重複性的或者相似性較高的代碼,幾乎可以一鍵補全(比如增刪查改的接口)
  • 一些API忘了怎麼寫,需要Google的時候

不適用場景

  • 複雜邏輯的場景基本不適用
  • 代碼上下文相似度較小的場景不適用
  • 保密需求高的項目不適用

一些弊端

  • 代碼需要嚴格Review,可能引入隱藏Bug
  • 非必要的代碼提示過於頻繁,影響正常編碼
  • 新手過於依賴,不利於編碼能力的提升
  • 有保密項目和敏感代碼應該嚴禁使用

安全

對於我們來說,最關心的問題就是我們的代碼會不會被用來訓練。根據Copilot安裝的時候的設置項,有一個勾選框:Allow Github to use my code snippets for product improvements. 可以不勾選這個。

價格

之前Copilot在內測期間一直是免費的,但是最近開始收費,有60天的試用期,之後每月10美元。

Tabnie可以免費使用

總結

綜合來看,越是重複性代碼較多、程序結構相對固定、相對通用的開發場景,Copilot可以提升的效率越爲明顯。而越是創新性較強、代碼原創性高、或者公司內部特有的一些開發場景,則Copilot提升效率較爲有限。

相反,如果是一些更爲通用的開發場景,項目的保密程度不高,可以接受上面提到的隱私性問題,那麼10%左右的效率提升還是相當可觀的一個提升

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章