本文转自:

https://blog.csdn.net/qq_28168421/article/details/102927311

-----------------------------------------------------------------------------

本文转自『AI开发者』(okweiwu)
不久前,一个免费的专门针对 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 语言
 
 
 
 
 
 
  • TabNine

优点:功能强大,支持度广泛
缺点:CPU 消耗大,笨重
 
 
 
 
 
 
  • aiXcoder

优点:一键输入整行代码,敲代码不存在的
缺点:需上传代码
 
 
 
 
 
 
 
 
 
 
当然,还有很多其它同类型的工具没能在此一一列举,这些优缺点也仅供参考;因为不同的人使用该类工具的用途、习惯都不一样,找到适合自己的工具就好~
文章来源:

https://kite.com/ref/eesWDmm

Kite 博客:

https://kite.com/blog/product/announcing-intelligent-snippets-for-python/

更多信息:

https://www.kdnuggets.com/2019/11/top-machine-learning-software-developers.html

 
 
 

【转载】 新版 Kite为啥这么火,问就俩字『好用』的更多相关文章

  1. 【转载】github 查找最火项目

    博主感觉这篇文章很有用,很方便所以转载过来学习学习. 原文链接地址https://www.cnblogs.com/poterliu/p/10634568.html 如何在github上查找star最多 ...

  2. <转载>面试官,不要再问我三次握手和四次挥手

    版权声明:本文为CSDN博主「夏雪冬日」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/hyg0811/a ...

  3. 『开源协议』Creative Commons Attribution 3.0 License . 协议的个人理解,并 转载分享 4000个 精美可商用小图标

    为什么会研究 Creative Commons Attribution 3.0 License Creative Commons Attribution 3.0 License 简称 CC3,是 一种 ...

  4. Android 项目中用得最多最火的第三方框架可能都在这里了

    分类 二级分类 框架名称 简介 Star 数 最近更新 UI 刷新 SmartRefreshLayout 智能下拉刷新框架 14k 18天 UI 刷新 Android-PullToRefresh 比较 ...

  5. [转载]从100PV到1亿级PV网站架构演变

    原文地址:http://www.uml.org.cn/zjjs/201307172.asp 一个网站就像一个人,存在一个从小到大的过程.养一个网站和养一个人一样,不同时期需要不同的方法,不同的方法下有 ...

  6. 为啥我做的RFM模型被人说做错了,我错哪了?

    本文转自知乎 作者:接地气的陈老师 ————————————————————————————————————————————————————— 有同学问:“为啥我做的RFM模型被客户/业务部门批斗,说 ...

  7. 万事先问『为什么』 what why how

    万事先问『为什么』! 遇到问题时,很多人的行为模式顺序是,先问『做什么』,『怎么做』,他们从来不问『为什么』,他们对根源性问题很模糊. 而聪明人则是先问『为什么』,再去构建『怎么做』,而『做什么』就是 ...

  8. 转载 全角字符unicode码对应表

    http://www.mytju.com/classcode/tools/encode_utf8.asp 对应关系查询网站 Uni. GB Uni. GB Uni. GB Uni. GB Uni. G ...

  9. 《新版阿里巴巴Java开发手册》提到的三目运算符的空指针问题到底是个怎么回事?

    最近,阿里巴巴Java开发手册发布了最新版--泰山版,这个名字起的不错,一览众山小. 新版新增了30+规约,其中有一条规约引起了作者的关注,那就是手册中提到在三目运算符使用过程中,需要注意自动拆箱导致 ...

  10. (面试题)面试官为啥总是让我们手撕call、apply、bind?

    引言 上一篇关于<面试官为啥总是喜欢问前端路由实现方式>的文章发布后,发现还是挺受欢迎的.这就给我造成了一定的困惑 之前花了很长时间,实现了一个自认为创意还不错的关于前端如何利用node+ ...

随机推荐

  1. 通过 Helm Chart 部署 Easysearch

    Easysearch 可以通过 Helm 快速部署了,快来看看吧! Easysearch 的 Chart 仓库地址在这里 https://helm.infinilabs.com. 使用 Helm 部署 ...

  2. The remote name could not be resolved

    HTTP The remote name could not be resolved HTTP Status:NameResolutionFailure

  3. C#.NET FRAMEWORK XML私钥转PKCS1,PKCS8

    C#.NET FRAMEWORK XML私钥转PKCS1,PKCS8 使用了 BouncyCastle 这个dll ,到nuget中下载即可. XML私钥转PKCS1 public string Xm ...

  4. Vue学习:10.v标签综合-进阶版

    再来一节v标签综合... 实例:水果购物车 实现功能: 显示水果列表:展示可供选择的水果列表,包括名称.价格等信息. 修改水果数量:允许用户在购物车中增加或减少水果的数量. 删除水果:允许用户从购物车 ...

  5. 记一次反向代理过滤sql注入

    公司有一php系统,由于该系统是购买的,并且没人懂php,无法通过修改代码过滤sql注入问题 代码如下: public class Program { public static void Main( ...

  6. 01-前端开发Vscode插件配置

    01 自动保存配置 02 空格渲染方式 配置好以后,可以看到代码的空格有几个,以点的方式呈现,1个点表示1个空格 03 图标插件 VSCode Great Icons 04 缩进 推荐使用2 05 v ...

  7. linux挂载的ntfs格式硬盘无法使用回收站

    linux挂载的ntfs格式硬盘无法使用回收站 解决办法: 新建回收站文件, 文件名为Trash-XXX . 比如Trash-1000 这里的1000就是你的$UID. sudo mkdir /.Tr ...

  8. 【Python】用Python把从mysql统计的结果数据转成表格形式的图片并推送到钉钉群

    ** python把数据转为图片 / python推送图片到钉钉群 ** 需求:通过python访问mysql数据库,统计业务相关数据.把统计的结果数据生成表格形式的图片并发送到钉钉群里. 一:Cen ...

  9. 傻瓜式Java操作MySQL数据库备份(使用mysqldump命令)

    傻瓜式Java操作MySQL数据库备份(使用mysqldump命令) 注释都是由chatGPT生成,有什么问题可以评论交流 @Value("${backup.sql.database}&qu ...

  10. Spring注解之依赖注入@Autowired和@Resource

    Spring常见的DI方式 字段注入(Field Injection) 在字段上使用@Autowired/Resource注解 字段注入是日常开发中使用最多的一种注入方式,它的实现代码如下: @Aut ...