介绍
Github Copilot 是由GitHub开发的一款AI辅助编程工具,可以称为编程“副驾驶”
,这意味着它可以为我们的编程工作带来不错的效率提升,但是目前还没办法替代我们的编程工作。
GitHub Copilot 是通过机器学习算法和大量的训练数据来训练的,包括开源在GitHub上的代码、用户输入的文本、代码、注释等信息 。根据项目上下文的语法、结构和约定生成代码供开发者参考使用, 从而降低程序开发的难度,让开发人员专注于解决更大的问题,提高工作效率。
GitHub Copilot 可以帮助解决错误,或学习如何使用新框架,而无需花费大部分时间浏览文档或搜索网络。
支持情况
- Github Copilot支持十几种编程语言,例如Python、JavaScript、TypeScript、Ruby 和 Go等。
- 支持多种开发环境和工具集成,例如VS Code、JetBrains IDE等。
一些缺点
- 非免费。试用期只有一个月,后面需要购买才能使用。
- 复杂编程问题无法处理。比如强业务代码这块的建议比较一般般。
- 可能存在风险。Copilot是基于大量的开源代码进行训练的,如果存在恶意代码或安全漏洞,可能会被Copilot学习并生成不安全的代码。
- 生成代码的质量可能不稳定。Copilot生成的代码片段可能存在语法错误或逻辑错误,需要开发者进行手动修复。
常用功能
- 自动补全代码
- 根据注释自动生成代码
- 根据上下文给出相似代码
- 自动生成测试代码
- 自动生成代码建议
体验
申请
首先我们需要先注册一个GitHub账号。注册完成后进入Copilot官网,需要开启订阅才能免费试用(目前是一个月试用期)。
安装到IntelliJ IDEA
进入Settings窗口的Plugins模块,搜索Copilot插件,安装GitHub Copilot
安装完成后重启IDEA
接下来是关联刚才注册好的GitHub账号,点击Tools菜单下的GitHub Copilot进行登录
点击前往登录
GitHub授权
看到这样就是授权成功了
在右侧工具栏也能看到Copilot
现在可以在项目中开始体验了
使用
首先试一下代码提示,可以看到Copilot会根据创建的类,去推测要写的代码
再试一下逻辑类型,自定义通用函数这种,比如字符串判断函数。可以看到Copilot的根据注释生成的效果还是不错,甚至它会推测你的下一个函数要编写的代码,在通用代码辅助编程这方面确实挺强大的。
接着体验一下生成单元测试代码,这是用Copilot生成的一个普通函数
用Copilot生成单元测试如下图,它不仅可以帮助我们生成第一个用例,还可以继续根据上文继续推测下一个用例。当然Copilot给的用例也不一定完全能使用,可能还需要进行一些修改,但对于开发过程来说,可以节约不少时间了。
使用感受
- 在工具类中使用有很大帮助(日期转换、对象转化、参数校验)
- 注释尽量描述事实性的问题,比如之前发生过的
- 描述问题的质量(详细度、准确度),决定了Copilot给出答案的质量
- 还是得多用才能掌握Copilot的使用方式
总结
经过这一轮体验下来,感觉GitHub Copilot在辅助编程工作上还是有比较大的帮助的,它不仅可以帮我们生成代码,还能帮我们检测代码的健壮性,无论对新手小白还是编程老人,都能提供挺不错的帮助。只有多用多总结才能尽快掌握AI辅助编程。