GitHub Copilot是合格的程序员副驾驶吗?必须滴!

大家好,欢迎来到程序视点!我是小二哥。

前言

从2023年中起,小二哥个人就开始实用GitHub Copilot了。不论是个人项目还是编写一般的示例代码,我都从GitHub Copilot的辅助编程中受益良多。

今天,我想从一个开发者的角度出发,谈谈我使用过GitHub Copilot后的一些想法。

(注:后续内容仅代表我个人主观体验,不能完全代表所有 Copilot 使用者的使用感受。)

这个 AI 副驾驶员合格吗?

大家或许在网上已经看过不少对 Copilot 补全效果「一惊一乍」的描述,但不得不承认,我使用 Copilot 的初期感受也是这样的!

GitHub Copilot似乎真的就好像一个无所不知的程序员,按注释所描述的那样去生成符合要求的代码。

比如现在我有一个需求:用 Python 提取少数派首页文章的标题

如果让我手码代码,我的思路是三步走:

  • (1) 通过异步请求的方式访问少数派的官方首页,然后
  • (2) 解析使用一个名为 BeautifulSoup 的第三方库解析请求后响应到的 HTML 源码
  • (3) 从当中提取 <title></title> 元素节点中的内容。

在拥有GitHub Copilot后,我可以直接写一段描述程序功能的注释,然后 Copilot 就给出了如下代码:

这是GitHub Copilot让我惊讶的地方。

  • GitHub Copilot,在我没有定义样板代码的情况下,能从相对简单的需求描述中自动生成符合要求的代码。

  • GitHub Copilot生成的这段代码没有太大问题。写得也有板有眼,甚至还顺手帮我们按照标准库、第三方库的规范顺序导入使用到的库,完成度在 90% 甚至更高。

  • 即使我擅长Python编程,也能顺利的完成这个功能.

但另一方面,GitHub Copilot也不是完美的。如果以复杂的现实需求来考察,它还显得太「稚嫩」了一些。

在现实世界中,对于一个有经验的程序员,或是身经百战(与产品经理 Battle 成百上千次)的「摸鱼达人」来说,在看似唾手可得的需求之下总会深埋着会一些描述里没有的细节。恰恰这些是需要充分考虑的。

明确告诉大家,GitHub Copilot目前还不足以做到上面这一步。每一个项目,无论简单与否,程序员和产品经理总是要来往好几个回合的!不要期待GitHub Copilot一次帮你搞定!

当然,尽管 Copilot 面对复杂需求还是成熟度不足,但并不能以此否认它的价值。就拿最典型的就是单元测试来说,就为我们提高了不少效率、节省了不少时间。

只需要一个/tests指令,GitHub Copilot就能帮我们很好地生成一些「好像是那么一回事」的单元测试。

对于开发人员来说,测试是枯燥但又不可或缺的。有了GitHub Copilot的加持,我们的头发可以为测试少操心啦!

最后

今天就和大家分享了一点个人对GitHub Copilot的想法。每个小伙伴使用GitHub Copilot后的体验都不一样。

GitHub Copilot是极度廉价劳动力,是可以让它帮我们试错、帮我们思考,从而节约我们自己的思考时间。习惯去使用它,这可能不是一天两天能把GitHub Copilot用通透的。

GitHub Copilot辅助,让我们更聪明的工作,而不仅仅是努力的工作。链接docs.qq.com/doc/DUWZkcnpKUFFScXhI 回复copilot了解更多详情!

当然,也不光是GitHub Copilot,JetBrains官方推出的AI Assistant也是一款优秀的AI辅助编程利器!点击链接docs.qq.com/doc/DUWZkcnpKUFFScXhI ,回复ai了解更多订阅详情!

对这两款AI工具比较了解的小伙伴,也可以直接扫描下方二维码,直接进行订阅。价格从优,机会难得,错过不再有!

【程序视点】助力打工人减负,从来不是说说而已!

后续小二哥会继续详细分享更多实用的工具和功能。关注【程序视点】设置为星,这样就不会错过之后的精彩内容啦!

如果这篇文章对你有帮助的话,别忘了【在看】【点赞】支持下哦~

相关推荐
小牛itbull4 小时前
ReactPress:重塑内容管理的未来
react.js·github·reactpress
鱼满满记12 小时前
1.6K+ Star!GenAIScript:一个可自动化的GenAI脚本环境
人工智能·ai·github
梦魇梦狸º14 小时前
腾讯轻量云服务器docker拉取不到镜像的问题:拉取超时
docker·容器·github
Huazie19 小时前
一篇搞定 Hexo Diversity 主题接入!支持多主题自由切换!
javascript·github·hexo
草明2 天前
Nginx 做反向代理,一个服务优先被使用,当无法提供服务时才使用其他的备用服务
运维·nginx·github
马里嗷2 天前
Puppeteer - 掌控浏览器自动化的开源利器
后端·github
2301_796982142 天前
怎样使用pycharm的服务?
git·pycharm·github
yanlaifan2 天前
GitHub中搜索项目方法
github
油泼辣子多加2 天前
2024年11月5日Github流行趋势
github