素材巴巴 > 程序开发 >

Copilot一款AI补全代码插件

程序开发 2023-09-21 06:23:42

这期我们来讲讲GitHub Copilot插件,Copilot是GitHub 去年联合OpenAI,推出了一款“GitHub Copilot”工具,可以根据上下文自动写代码,将程序员从重复的编写中解放出来。
Copilot官方地址:
https://copilot.github.com
Copilot官网
目前该项目还处于“技术预览阶段”,想要使用的前往官网申请,我从申请到获批,大概花了几天时间。获批后进入官网获取、下载、授权即可。该工具此前已支持了 Visual Studio Code、Visual Studio、Neovim 和JetBrains IDE 等。
官方参考文档地址:
https://github.com/github/copilot-docs
Copliot官方参考文档
在我拿到获批后,使用了几天发表一下自己的感受和一些看法。我这里以 Visual Studio Code为例(是因为我的IDEA2019.3版本不支持图片,如果想在IDEA使用需要升级到2021.2 及更高版本才支持)。
我的IDEA版本
安装插件:

*方法一:*通过参考文档进入在Visual Studio Code使用的参考文档,可以通过点击"GitHub Copilot extension"进入安装插件。
VS Code参考文档
*方法二:*也可以通过VS Code的插件市场来安装该插件,认准是下面图标的这个别安装错了,然后直接点击install安装即可。可以看出目前安装的人次已经超过了百万,说明是十分受欢迎的。

VS Code安装Copilot
不管通过哪个方式安装,在安装完成后,都会提示我们通过GitHub账号进行授权,直接跟着提示进行操作即可。并且会在右下角显示下图的这个logo证明我们可以开始直接使用了。

安装完成后
目前,GitHub Copilot 支持 Python、JavaScript、TypeScript、Java、Ruby 和 Go 等编程语言。可以根据上下文自动写代码,包括文档字符串、注释、函数名称、代码,只要用户给出提示,就可以写出完整的函数。而且最牛的地方是不管你的注释是什么语言,他都能准确读懂你的意思,作为使用者真的有点感到不可思议。

接下来我们就体验一下它的使用过程:第一步,我这里只输入“获取用户信息”这个注释,当你按下回车时,你就会发现,它已经自动补全这个方法了,按下Tab键,就会选择了这个方法名。

写下注释
*第二步,*再按回车或者Alt + ]键(不同操作系统快捷键不一样,具体参考官方文档),我们就可以看到它把整个方法都完整的写出来了,使用的method也是我们所需要的。而且是完全正确的。

自动补全
例子1:通过中文注释补全代码,只需写好注释即可。
中文注释
例子2:如果你英文水平还不错,这里你也可以选择使用写英文注释来补全,你会发现,不管你用中文还是用英文写的注释,它最终补全的代码都是一样的。毫不夸张地说,感觉它真的能读懂我们的思想一样。
英文注释
例子3:如果以上还没满足你的需求,那么接下来我通过在我用Vue写的项目下体验以下该插件如何:这个需求是用户在注册的时候,确保用户输入的昵称不带空格符,否则直接写入数据库会出现数据错误等。
注册界面
当我在method里输入完中文注释,它已经把代码补全提示出来了,而且callback返回的提示也是符合我们的想法的。
Vue项目
不得不说这款AI代码补全插件是对我们代码编写时,大大提升了我们的效率,节省了一些时间,比起我们去手写这些方法。后期等我的IDEA升级到新版本,再出一期,使用该插件来自动补全java代码。

尽管这个AI补全代码如此优秀,但是我们也要正确看待它。

1、如果你是编程小白,或者刚入门,我不太建议使用它,因为如果你连这些基本的代码都还没掌握,就开始依赖上AI补全插件,对你后续的学习是很不利的。

2、如果你已经有了一些基础,当你有时候不知道该方法的参数、返回值,请求方法等你可以通过使用它来加强记忆。

最后:在我看来,我不认为任何 AI 应用程序会很快取代开发人员。我宁愿将这些应用程序视为帮助我们更快地编写代码的额外工具。我认为它们是节省时间的工具。

其实我们也没有必要担心有一天AI会取代了人类。以下是选自一篇关于AI的文章,人工智能是提高人类的生产力,以帮助我们完成一些宏景…

以下选自:Bloomberg News

原标题:Big Data Won’t Build a Better Robot

Artificial intelligence is going to boost human productivity in a thousand ways, transforming everything from transportation to health care to agriculture. Some enthusiastic computer scientists even think we will find a “master algorithm” that will fix our politics and make lives “longer, happier and more productive.” In the grandest of these visions, smart computing machines could automate all of scientific discovery.

Perhaps machines won’t replace humans quite as broadly as many fear. AI is getting better at doing what humans can do. But humans working alongside AI will be able to do what neither humans nor AI can achieve alone.

完。
下一期聊聊:尤雨溪-IT界华人的骄傲,Vue.js的创造者。
编于:2022.4.18
Author: Griffith_yu
公众号


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。