雷锋网 AI 开发者按:不久前,一个免费的专门针对 Python 的代码补全工具 Kite,有了新的动态。这次,Kite 开发者在之前的基础上,增加了「Intelligent Snippets」功能。它可以帮助广大开发者在敲代码时,实时生成与上下文相关的代码片段。
这不仅大大提高了代码敲写效率,同时也让开发者能更轻松地完成更复杂、更多字符的代码语句。Python 之父 Guido van Rossum 用后,也发出了「really love」感叹,向大家墙裂推荐了这一高效工具。那么,这一工具到底效果如何?雷锋网 AI 开发者带大家一探究竟~
更智能的代码补全
据官方介绍,本次更新的「Intelligent Snippets」功能,旨在给予开发者更加完美的敲代码体验。
在这之前,大部分开发人员会选择静态自动补全代码方式,作为提高在 Python 中调用函数效率的解决方案。但这一方法也有局限,它无法随开发者编写过程而自动适应,需要手动修改参数和子语句。
例如,下图展示了开发人员使用代码片段插入函数定义的结构,然后填充函数的其余部分。
而新版 Kite 的「Intelligent Snippets」是基于 Kite 在代码库中找到的代码模式实时生成。该引擎可以根据正在使用的代码动态生成片段,它会自动检测代码库中开发者所使用的常见模式,并在编写代码时建议使用相关模式。从下面的示例我们可以看到,它能有效预测一些常用编辑模式:
更全面的函数支持
Intelligent Snippets 构建在 Kite 代码补全核心代码引擎上。Kite 首先会索引开发者的代码库,并学习函数常用模式。然后,当开发者调用函数时,Kite 会为该函数提供一些片段,以补全该部分代码。Kite 的自动补全功能仍然为每个参数提供补充代码的建议。
Intelligent Snippets 不仅可以节省编写代码的时间,还可以减少开发者查找文档的次数。
下面的视频显示开发人员使用 Intelligent Snippets 快速调用 requests.post:
Intelligent Snippets 也适用于自定义的函数,如下图中所示:
更高的编写效率
从官网的演示来看,我们会发现通过使用 Kite 后,该工具不光能够帮助开发者减少敲代码的次数,也可以有效提高编写速率。在下面这个例子中,同一段代码,使用 Kite 后能够有效减少 47% 的敲击次数。
除此之外,新版 Kite 还支持一键检索功能,只需点击代码即可查阅对应的文档。其中,包含了 800 多个 python 库和代码 Demo。
更多编辑器支持
新版 Kite 除了支持之前的 Windows、Mac、Linux 编辑器之外,还支持了更多编辑器,而且更多语言正在扩展中。 新增支持编辑器如下:
Atom
PyCharm
Sublime
VS Code
Vim
IntelliJ
当然,除了 Kite 之外,目前讨论较多的代码补全工具还有被称作「程序员的杀手级应用」TabNine;将深度学习应用于代码补全的 aiXcoder 等。
从一些网友的评价来看,对这几款工具的评价也是褒贬不一,小编选取了几个有趣的评论,并将其主要优缺点对比及工具下载地址整理如下~
新版 Kite
优点:代码补全更智能、高效
缺点:只支持 python 语言
下载地址:https://kite.com/download/
TabNine
优点:功能强大,支持度广泛
缺点:cpu 消耗大,笨重
下载地址:https://tabnine.com/blog/deep
aiXcoder
优点:一键输入整行代码,敲代码不存在的
缺点:需上传代码
当然,还有很多其它同类型的工具没能在此一一列举,这些优缺点也仅供参考;因为不同的人使用该类工具的用途、习惯都不一样,找到适合自己的工具就好~
文章来源:
Kite 博客:
https://kite.com/blog/product/announcing-intelligent-snippets-for-python/
更多信息:
https://www.kdnuggets.com/2019/11/top-machine-learning-software-developers.html
雷锋网 AI 开发者