程序员领域里面有这么一句话,我相信你肯定听过,那就是:人生苦短,我用 Python
。表达的是 Python
的库很多,使用起来很简洁和方便。
不过我觉得现在在 AI
的加持下,这句话应该改为:人生苦短,我用 Copilot
。
先来简单给大家演示一下使用 Github Copilot
的效果是怎样的。
假设我们这里有个 Student
类,其中有三个属性,分别是姓名,年龄和性别,代码很简单,我这里就不贴出来了,然后我们通过一个 main
方法来进行测试。
这里可以看到,我们在写代码的时候,只要写好注释,然后按下回车过后,Github Copilot
就会自动的帮助我们生成相应的代码,代码的可用度还是挺高的。
当我们写下注释:“使用 Java 8
的 Stream API
按照年龄进行分组,然后统计每个分组的数量” 的时候,Github Copilot
就自动的帮我们采用了 Stream
语法,并且使用了 Collectors.groupingBy
方法,按照年龄进行分组统计。
再当写下注释“将列表进行排序,年纪从小到大,如果年纪相同,按照姓名的字母顺序排序”,Github Copilot
就会按照年龄给我们排序,并且在年龄相同的情况下,会按照我们的要求根据名称进行顺序排序。
整个实现的过程非常丝滑,使用提来只能用一个字表达:爽!
除了上面的简单的业务逻辑之外,对于一些常见的算法代码,使用 Github Copilot
来帮我们实现,那简直不要太爽,以前在写的时候都是网上搜索,现在直接在 IDEA
里面,写好一个注释,就自动帮我们生成了,效率杠杠的。
不过也要注意,写一个好的注释也就是一个好的提示词是很重要的,注释写的越完整,生成的代码也就越健壮。
如下所示,如果我们去除掉注释里面的最后注意溢出四个字,生成的代码就如下所示,虽然很多时候也是可以用的,但是当数据很大的时候,就会出现问题了。
这也告诉我们一个道理,那就是工具永远只是工具,AI
也只是工具,最终生成出来的代码能不能使用,性能和效率怎么样,都还是需要我们程序员去进行判断的。
这话就说回来了,现在很多人都在鼓吹 AI
要替代程序员,未来不知道,至少短期还是不行的,而对于我们程序员来是,善于利用工具学习新知识,与时俱进,往往就不会被轻易淘汰。
同样是用 AI
工具生成代码,别人生成的就有问题,你底子强,功底好,生成出来的就更加健壮,这样淘汰的只会是别人。毕竟工具再好,不会用有啥用呢?
在我们日常开发过程中,除了自己写代码,难免还会读一些别人的代码,或者是一些框架的源码,当我们遇到看不懂或者代码太长的时候,我们可以使用 Github Copilot
的代码解释功能,帮我们解释代码的含义。
特别是我们在看一些开源的项目的时候,这个功能更加实用,因为开源项目,我们不会从头到尾的都熟悉源码,往往只需要知道自己需要的那部分就可以了。
可以看到 Github Copilot
是可以帮我们解释代码的含义的,我们也可以复制要解释的代码到聊天框里面,让 Github Copilot
帮我们解释,如下所示。
可以看到 Github Copilot
很详细的给我们介绍了这段代码的含义。
前面给大家演示了使用的效果,现在教教大家如何使用,如果要使用 Github Copilot
,我们需要两个条件
IDEA
中安装 Github Copilot
的插件;Github
平台上面开通 Copilot
能力;安装插件没啥好讲的,直接在插件市场里面搜索就行了,安装成功过后会在 IDEA
出现 Github Copilot
的图标,首次安装的话会让登录 Github
账号,直接登录就好。
然后在 Github
账号的 setting
中,找到 Copilot
这一项,正常情况下这里会显示购买,我这边是已经购买了,所以看不到,接下来就按照提示一步一步操作,绑定一张信用卡,然后购买就行。
购买过后,就可以开启 Copilot
时代编程了,不过现在 Github Copilot
的价格是十美元一个月,价格敏感者慎入,不过换过来想起来,每个月少喝几杯咖啡或者奶茶是不是就可以省下来呢?