最近看到一个新闻,Twitter 上一名技术人分享了他监督的一个事件,即拥有 19 年编码经验、会 100% 手写代码的程序员最终败给一位仅有 4 年经验、却善用 Copilot、GPT-4 的后辈,后因不愿拒绝使用辅助代码工具,只想写可控的代码,惨遭面试淘汰,而后者轻松拿到了全职 Offer。
AI时代,如果还在100%手写代码,那可就 OUT
了。经过大多数使用者的测试,使用AI辅助编码,可以提升 20%以上
的编码效率。让我们从重复的代码中解放出来。
不过AI辅助编码工具这么多,应该用哪个呢?本文给大家介绍下我的选择。
一、AI辅助编码能力一览
首先我们看看AI辅助编码都能干什么?常见的AI辅助编码工具,会提供下列三类能力
看文字Get不到它的神奇?那我们来看看实际的演示效果
1.1、代码自动补全功能
当我们输入完注释后,代码便自动弹出,按Tab键即可补全
1.2、代码分析与操作
选中一段代码后,输入对应的操作指令(例如增加注释、代码调优等),便会对选中的代码进行对应的调整。
1.3、根据需求生成代码
跟AI说 "请帮我用antd写一个表格", 随后回复对应内容,一键插入到编辑器中
纵观所有的AI辅助编码工具,提供的能力大体为上述三类,接下来我们看看不同的AI工具具体能力如何。
二、AI辅助工具对比
我们对比了 Github Copilot
、 Codeium
、 Code Whispere
、 CodeGeex
和 Bito
这五款辅助编码工具,结果如下:
2.1、功能对比
对比项 | Copilot | Codeium | Code Whispere | CodeGeex | Bito |
---|---|---|---|---|---|
模型 | OpenAI 的 GPT-3 | 自研 | 自研 | 自研 | OpenAI 的 GPT-4 |
IDE集成支持 | 支持 | 支持 | 部分支持 | 部分支持 | 部分支持 |
代码自动补全 | ✅ | ✅ | ✅ | ✅ | ❌ |
自然语言生成代码 | ✅ | ✅ | ✅ | ✅ | ✅ |
生成单元测试 | ✅ | ✅ | ❌ | ✅ | ✅ |
解释/优化代码 | ✅ | ✅ | ❌ | ✅ | ✅ |
生成注释 | ✅ | ✅ | ✅ | ✅ | ✅ |
代码转换翻译 | ✅ | ✅ | ✅ | ✅ | ✅ |
收费情况 | 收费 | 免费 | 免费 | 免费 | 免费 |
代码安全性 | 安全 | 一般 | 安全 | 安全 | 一般 |
2.2、使用推荐
经过实际的体验,我认为最好用的收费和免费的工具分别是 Github Copilot
和 Codeium
适用角色 | 免费工具推荐 | 收费工具推荐 |
---|---|---|
前端、后端、客户端 | Codeium | Github Copilot |
它们的官网如下:
- Codeium:codeium.com/
- Github Copilot:github.com/features/co...
从功能的丰富度和生成代码的可用性来说,两者都有较好的表现。相对来说 Github Copilot
更胜一筹,不过 Codeium
是免费的,真香!
其它几个工具相对来说还是存在一些不足之处:
Code Whispere
的不足
- 代码生成的准确性比较低
- 会生成语法错误的代码
- 中文容易乱码
CodeGeex
的不足
- 代码生成慢
- 准确性低
三、Github Copilot使用指南
Github Copilot的使用教程,网络上很多了,这里我挑几个重点给大家介绍下。
3.1、Copilot功能一览
Github Copilot主要功能有 这些功能又这三个不同的插件来实现
- GitHub Copilot
- GitHub Copilot Labs
- GitHub Copilot Chat
3.2、Copilot付费
访问Github Copilot官网,有费用说明:github.com/features/co...,个人用户10美元/月
用起来不便宜,不过也有一些免费用的方式
- Copilot目前并没有限制一个设备只能使用一个账号,所以可以跟周围小伙伴一起购买一个账号来使用。
- Copilot对于开源贡献者和学生免费,如果是你GitHub上面最流行的那部分开源项目的贡献者或者是认证的过的学生,那么可以免费使用Github Copilot.
3.3、代码安全性问题
Copilot默认所有代码上下文通过https传到云端(微软的服务器),微软的隐私保护政策里承诺不会有任何代码被泄露,详见 docs.github.com/en/site-pol...
但如果在公司里使用,还是建议大家关闭代码上传功能
关闭方法:在登录Github后,访问 github.com/settings/co...,取消勾选 Allow GitHub to use my code snippets for product improvements *
,如下图
四、Codeium功能一览
Codeium
的使用方法,网络上也有很多教程了,推荐这篇:mp.weixin.qq.com/s/3EtQUnq1p...
Codeium的主要功能有
4.1、代码安全性问题
如果项目中如果包含隐私信息,那么需要在个人主页中勾选 "Disable code snippet telemetry" 勾选后部分功能无法使用,这部分根据项目实际情况来判断,代码中如果不包含敏感信息,例如账号密码等,就影响不大。
4.2、Codeium的收费
Codeium是免费的,但提供付费增值服务。
五、总结
最后,如果你还没用过AI辅助编码工具,希望这篇文章能让你更快的用起来~
参考文章: