訂閱電子報∣ 友善列印字體大小 文章分享-Facebook 文章分享-Plurk 文章分享-Twitter
Intellicode-AI幫你維護程式碼
資策會Find研究員:蔣曜安
獲取產業訊息零時差!立即訂閱電電公會電子報。

在開發專案時,每位開發者都有各自偏好的程式碼風格,如果團隊間的風格差異很大,沒有統一規範的話,在未來程式碼的維護上,將會投入更多的成本,所以開發團隊通常會搭配Linter這樣的工具,來控管程式碼的品質。透過Linter工具建立團隊規範,我們可以確保團隊中每一個人寫出來的程式碼風格幾乎一致,例如:變數命名使用Camel Case、逗號後方強迫加空白等。

微軟在2018年的Build大會上釋出了Visual Studio的外掛套件Intellicode,一個利用人工智慧引導您寫出更符合團隊風格的利器,Intellicode透過Github上數千項開放原始碼專案,且每項專案都是超過100顆星以上的專案,利用它們當做基底,訓練出人工智慧模型,模型會在團隊編寫程式碼的同時,計算出您最可能使用的方法,並且把方法放在自動完成清單中的前面幾項讓您選擇,以及提醒專案中哪裡有風格不一致的情況,更讓人興奮的是,Intellicode甚至會提出推薦的程式碼內容結構,讓您輕鬆保持專案的一致性。

然而僅靠Github上的開放原始碼專案來訓練模型是不夠的,Intellicode還可以讓您利用私有的專案進行模型的訓練,會從您的程式碼基底動態建立.editorconfig檔案,來定義編碼樣式與格式,透過程式碼樣式的推理和控管等功能來提高私有專案的團隊工作效率,如果專案沒有經過大規模更動的話是可以不用持續進行訓練的,微軟也將Intellicode整合進Azure Pipelines當中,結合持續整合與持續部署的流程,定期訓練模型,以達到長期維護的效果。

相信未來許多編譯器也會推出各自的AI開發小幫手來協助開發系統,甚至透過AI的幫助,自動產生程式碼,微軟研究院與劍橋大學研究人員開發出一套可自己撰寫程式的人工智慧「DeepCoder」,儘管仍是早期研究,還不能應用於企業等級的軟體,隨著人工智慧的進步,未來可以被機器取代的工作將會越來越多,不論您是知識型工作還是勞力型工作,恐怕都難以避免被AI取代的風險。


資料來源:
https://docs.microsoft.com/en-us/visualstudio/intellicode/custom-models
https://openreview.net/pdf?id=ByldLrqlx

訂閱電子報 友善列印 字體大小:
獲取產業訊息零時差!立即訂閱電電公會電子報。