第九十七期:新版Kite:实时补全代码,Python之父都发声力挺!
不久前,一個(gè)免費(fèi)的專門針對(duì) Python 的代碼補(bǔ)全工具 Kite,有了新的動(dòng)態(tài)。
作者:楊鯉萍
本文轉(zhuǎn)自雷鋒網(wǎng),如需轉(zhuǎn)載請(qǐng)至雷鋒網(wǎng)官網(wǎng)申請(qǐng)授權(quán)。
不久前,一個(gè)免費(fèi)的專門針對(duì) Python 的代碼補(bǔ)全工具 Kite,有了新的動(dòng)態(tài)。這次,Kite 開發(fā)者在之前的基礎(chǔ)上,增加了「Intelligent Snippets」功能。它可以幫助廣大開發(fā)者在敲代碼時(shí),實(shí)時(shí)生成與上下文相關(guān)的代碼片段。
這不僅大大提高了代碼敲寫效率,同時(shí)也讓開發(fā)者能更輕松地完成更復(fù)雜、更多字符的代碼語句。Python 之父 Guido van Rossum 用后,也發(fā)出了「really love」感嘆,向大家墻裂推薦了這一高效工具。那么,這一工具到底效果如何?雷鋒網(wǎng) AI 開發(fā)者帶大家一探究竟~
新版 Kite 好在哪兒?
更智能的代碼補(bǔ)全
據(jù)官方介紹,本次更新的「Intelligent Snippets」功能,旨在給予開發(fā)者更加完美的敲代碼體驗(yàn)。
在這之前,大部分開發(fā)人員會(huì)選擇靜態(tài)自動(dòng)補(bǔ)全代碼方式,作為提高在 Python 中調(diào)用函數(shù)效率的解決方案。但這一方法也有局限,它無法隨開發(fā)者編寫過程而自動(dòng)適應(yīng),需要手動(dòng)修改參數(shù)和子語句。
例如,下圖展示了開發(fā)人員使用代碼片段插入函數(shù)定義的結(jié)構(gòu),然后填充函數(shù)的其余部分。
而新版 Kite 的「Intelligent Snippets」是基于 Kite 在代碼庫中找到的代碼模式實(shí)時(shí)生成。該引擎可以根據(jù)正在使用的代碼動(dòng)態(tài)生成片段,它會(huì)自動(dòng)檢測(cè)代碼庫中開發(fā)者所使用的常見模式,并在編寫代碼時(shí)建議使用相關(guān)模式。從下面的示例我們可以看到,它能有效預(yù)測(cè)一些常用編輯模式:
更全面的函數(shù)支持
Intelligent Snippets 構(gòu)建在 Kite 代碼補(bǔ)全核心代碼引擎上。Kite 首先會(huì)索引開發(fā)者的代碼庫,并學(xué)習(xí)函數(shù)常用模式。然后,當(dāng)開發(fā)者調(diào)用函數(shù)時(shí),Kite 會(huì)為該函數(shù)提供一些片段,以補(bǔ)全該部分代碼。Kite 的自動(dòng)補(bǔ)全功能仍然為每個(gè)參數(shù)提供補(bǔ)充代碼的建議。
Intelligent Snippets 不僅可以節(jié)省編寫代碼的時(shí)間,還可以減少開發(fā)者查找文檔的次數(shù)。
下面的視頻顯示開發(fā)人員使用 Intelligent Snippets 快速調(diào)用 requests.post:
Intelligent Snippets 也適用于自定義的函數(shù),如下圖中所示:
更高的編寫效率
從官網(wǎng)的演示來看,我們會(huì)發(fā)現(xiàn)通過使用 Kite 后,該工具不光能夠幫助開發(fā)者減少敲代碼的次數(shù),也可以有效提高編寫速率。在下面這個(gè)例子中,同一段代碼,使用 Kite 后能夠有效減少 47% 的敲擊次數(shù)。
除此之外,新版 Kite 還支持一鍵檢索功能,只需點(diǎn)擊代碼即可查閱對(duì)應(yīng)的文檔。其中,包含了 800 多個(gè) python 庫和代碼 Demo。
更多編輯器支持
新版 Kite 除了支持之前的 Windows、Mac、Linux 編輯器之外,還支持了更多編輯器,而且更多語言正在擴(kuò)展中。 新增支持編輯器如下:
-
Atom
-
PyCharm
-
Sublime
-
VS Code
-
Vim
-
IntelliJ
其它代碼補(bǔ)全工具
當(dāng)然,除了 Kite 之外,目前討論較多的代碼補(bǔ)全工具還有被稱作「程序員的殺手級(jí)應(yīng)用」TabNine;將深度學(xué)習(xí)應(yīng)用于代碼補(bǔ)全的 aiXcoder 等。
從一些網(wǎng)友的評(píng)價(jià)來看,對(duì)這幾款工具的評(píng)價(jià)也是褒貶不一,小編選取了幾個(gè)有趣的評(píng)論,并將其主要優(yōu)缺點(diǎn)對(duì)比及工具下載地址整理如下~
-
新版 Kite
優(yōu)點(diǎn):代碼補(bǔ)全更智能、高效
缺點(diǎn):只支持 python 語言
下載地址:https://kite.com/download/
-
TabNine
優(yōu)點(diǎn):功能強(qiáng)大,支持度廣泛
缺點(diǎn):cpu 消耗大,笨重
下載地址:https://tabnine.com/blog/deep
-
aiXcoder
優(yōu)點(diǎn):一鍵輸入整行代碼,敲代碼不存在的
缺點(diǎn):需上傳代碼
下載地址:https://aixcoder.com/#/
當(dāng)然,還有很多其它同類型的工具沒能在此一一列舉,這些優(yōu)缺點(diǎn)也僅供參考;因?yàn)椴煌娜耸褂迷擃惞ぞ叩挠猛尽⒘?xí)慣都不一樣,找到適合自己的工具就好~
閱讀目錄(置頂)(長期更新計(jì)算機(jī)領(lǐng)域知識(shí))
閱讀目錄(置頂)(長期更新計(jì)算機(jī)領(lǐng)域知識(shí))
閱讀目錄(置頂)(長期科技領(lǐng)域知識(shí))
歌謠帶你看java面試題
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的第九十七期:新版Kite:实时补全代码,Python之父都发声力挺!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高性能MySQL(呕心沥血整理万字长文)
- 下一篇: Grasshopper and Rhin