转载:在 AI 时代,程序员应该如何利用工具,提升自己的开发效率?

转载链接:在 AI 时代,程序员应该如何利用工具,提升自己的开发效率?-腾讯云开发者社区-腾讯云

随着人工智能 AI 的飞速发展,程序员面临的挑战也在不停地升级,但与此同时,也为我们带来了前所未有的机遇。通过恰当地利用 AI工具,可以大大提升我们的开发效率。

日常开发中 AI 的辅助功能有:

  1. 代码生成;
  2. 单元测试编写;
  3. AI 代码评审;
  4. SQL 生成;

代码生成

首先能想到就是使用一些 Copilot 工具来帮助我们在写代码的时候生成提示,IDEA 的原生提升功能在很多时候已经可以帮我们提高效率了,不过 IDEA 的提示只是一些字符传匹配,并未具备任何 AI 生成的能力,它只能依赖工具的配置,语言的类库等来提示。

而基于 AICopilot 工具,是基于大量代码训练而来,是一种生成式的工具,只有给到适当的提示信息,就可以做到无中生有。

这类的工具有很多,比如Github Copilot,Codeium,Bito.ai 等,关于 Github CopilotBito 前面也有文章写过,感兴趣的小伙伴可以去看看。

如下所示

单元测试

程序员除了不喜欢给代码写注释以外还有一个不喜欢的就是写单元测试了,但是如果有了 AI 的加持,写单元测试不再是痛苦的了,只要选中要写单侧的代码,然后选择生成单侧即可。

只要几秒钟我们的单侧就自动生成完成了,怎么样是不是很爽。

除了 Github Copilot 前面提到的 Bito AI 也是可以的,其他的 AI 助手应该也有相似的功能,感兴趣的可以去试试,不过如果可以还是建议使用 Github Copilot,毕竟效果是最好的。

AI 代码评审

除了写代码和单元测试之外,AI 还可以帮我们解释和评审代码,在日常的开发过程中,我们难免要阅读一些别人的代码或者一些框架的代码,对于一些简单的代码我们可以看懂,但是对于一些我们不熟悉的语言或者框架的代码,我们则可以使用 AI 来帮助我们理解。

通过将代码选中或者复制发送给 Copilot,让其帮忙解释代码的含义即可。

基于这种 AI 的代码解释,还可以延伸出一个 AI 自动代码审查的功能,不过需要额外进行一些开发才行,我们可以基于 Git 的版本控制获取到变更的代码,然后通过将变更的代码加上提示词发送给大模型进行代码的自动审查,然后再将代码审查的结果返回回来,这样我们就实现了 AI 自动代码评审。

不过要考虑到数据安全的问题,所以如果没有私有化部署大模型的话,可能会有代码泄露的风险,小伙伴的小心实践。在掘金上看到了一篇详细的实践文章,感兴趣的可以去试试。https://juejin.cn/post/7280008213662531599

SQL 生成

作为后端开发程序员日常除了写 Java 代码之外,难免还会写一些 SQL 做一些数据统计的工作,如果用自然语言来实现 SQL 自有,听起来是不是很爽!

现在已经有相应的产品了,在 Github 上面有一个叫 Chat2DB 的开源项目,实现了从自然语言到 SQL 的转化。

Chat2DB 是一款有开源免费的多数据库客户端工具,支持 windows、mac 本地安装,也支持服务器端部署,web 网页访问。和传统的数据库客户端软件 Navicat、DBeaver 相比 Chat2DB 集成了 AIGC 的能力,能够将自然语言转换为 SQL,也可以将 SQL 转换为自然语言,可以给出研发人员 SQL 的优化建议,极大的提升人员的效率,是 AI 时代数据库研发人员的利器,未来即使不懂 SQL 的运营业务也可以使用快速查询业务数据、生成报表能力。

这个项目目前还非常活跃,已经收获了 10.4 K+ 的 Star,感兴趣的小伙伴可以去尝试尝试。

总结

AI 时代,作为程序员的我们要顺应时代的发展,善于历史工具,当然要想从这些工具中获得最大的价值,我们就需要了解在何种情况下采用何种工具。

这就好比一个木匠,他有一整套的工具,但要知道什么时候用锤子,什么时候用螺丝刀。

学习使用这些工具尽管花费了一些时间,但从长远来看,却能够节省更多的时间和精力。

总而言之,在人工智能的时代,用好工具,程序员可以实现在开发效率和质量上的大幅提升。在这个 AI 时代,我们每个人都有机会成为更好的创造者。

我们不是要被 AI 取代,而是要学会利用 AI 加强自己的能力,从而达到我们自己的潜力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值