最近,结对编程又双叒叕火了。
你以为的结对编程是这样的:
实际上是这样的:
更惨一点是这样的:
GitHub告诉你,结对编程可以是这样的:
只需要输入注释,AI会帮你自动写出你想要的代码。注意,是自动生成代码,而不是简单的代码补全。
这就是GitHub近日联合OpenAI推出的一款AI编程工具——GitHub Copilot。
GitHub Copilot是一个AI与程序员结对编程的工具,可以帮助程序员降低工作量,更快的编写代码。它可以从代码和注释中理解上下文,并立即写出代码。
无论是在文档中的字符串、注释、函数名称还是代码本身,这个AI编程工具会根据程序员提供的上下文合成代码。
从官方资料来看,GitHub Copilot有几大功能:
1.将注释转换为代码
只需要在编辑器中写出自己想要的逻辑,GitHub Copiot就会自动生成代码。
2.自动填充重复代码
这款AI编程工具很擅长自动生成样板代码和重复代码。只需要给它一些例子,它就能迅速生成其余的代码。
3.自动测试
开发人员只需将单元测试包导入到编辑器中,GitHub Copilot就可以给出与代码匹配的测试。
4.提供替代方案
GitHub Copilot还可以给出多种代码方案,开发人员可以根据自己的需求,选择不同的代码。
GitHub Copilot还有一个十分强大的功能——帮你学习新的编程语言或者框架。
使用自己不熟悉的编程语言或者框架时,它会帮助开发人员找出错误,省去了大量百度、Google的时间。
如此强大的功能,可能会让很多人觉得,以后会打字就能当程序员了?
会不会出现“程序员写AI来取代程序员”的尴尬?
在可预见的未来,这样的情况几乎不可能发生。
首先,GitHub Copilot虽然比其他代码助手要智能不少,但它现在还处于测试阶段,无法写出绝对完美的代码。
GitHub Copilot只会通过学习,尝试了解开发人员的意图和想法,尽可能的生成最好的、最有效的代码。
但是这款AI编程工具,仍然属于弱人工智能。有时候它甚至会生成一些完全没有意义的代码,让程序员摸不着头脑。
GitHub Copilot写出的代码,仍然离不开开发人员的测试,必须向自己写的代码一样,仔细的测试、审查才行。
说到底,要是AI编程工具写出了什么错误代码,要为此负责任的,最终还是开发者。只要这一点不变,AI再怎么发展,也很难取代程序员的工作。
思考,一直是AI的硬伤。
一本书上提到,程序员花费了50%的时间在非编程任务上。
也有的人说,程序员80%的时间都在思考,只有20%是在写代码。
所以,只要AI不能向人类那样思考,不能向人类那样理解需求,程序员的工作就无法被取代。
GitHub Copilot虽然没有那么神奇,但他对于提高开发人员的效率和生产力,仍然是有很大帮助的。
目前这款AI编程工具支持Pytohn、C++、Java等主流语言和框架,已经开放下载,只要注册的账号通过了审核,就能在VS Code上安装体验了。
https://marketplace.visualstudio.com/items?itemName=GitHub.copilot