作者:京东科技 赵龙波

“贾维斯,你在吗?”

“随时待命,先生。”

类似《钢铁侠》里的人工智能助理贾维斯,ChatGPT或许是你的随时待命的助手。ChatGPT在大量文本数据上进行了培训,这使它能够理解单词和短语的上下文和含义,并生成高度相关的上下文响应。能完成撰写邮件、视频脚本、文案、翻译、代码等任务,作为一名开发人员,尝试探索一下chatGpt对我们的工作能有哪些帮助。 (由于 ChatGPT对国内禁止访问,以下是通过调用openAI的api接口实现的对话,所以界面与原生有所不同。网上很多种实现方式,不多赘述。)

先来看看chatGPT自己的回答:

每次回答都不一样,但都差不多的意思,这个回答比较抽象,如果再具体一些就好了。下面列出了一些使用场景:

回答一些基础的编程或者计算机问题

这应该对AI来说是小儿科了,但确是比较常用的功能,不懂就问。

生成正则表达式

这两个答案都是准确的。这样使用起来确实比搜索要方便很多

编写脚本

如:shell脚本

这个脚本是正确的,再来一个复杂的:

为了验证这个脚本是否正确,去服务器上运行了一下,是没有问题的,并且nginx路径就是nginx默认的文件夹路径,不用更改:

写sql语句也不在话下:

我这里问的比较口语化,且写错了标点符号,它还是理解了。

shell脚本可能是AI使用它海量内容查询到类似的然后仿造的,但sql语句是它真的理解了问题并结合实际语法创造出来的。

文字命名格式转换:

文字格式转换有成熟的各种实现,这也算一种途径。

生成代码

比如:写一个简单获取每月最后一天的公共方法

上面实现不难,再尝试写一个包含多个方法的工具类,并一次生成

不仅给出了代码,还把注释也打上了

甚至可以约定使用的java类版本

如果你对这个写法不满意,同一个问题再次发问,还能给出其他写法:

项目中经常用到各种各样的工具类,也许下次试试直接说出你要的功能,让AI给你写出来吧

起名字

如:给某个类命名

你正在看的这篇文章标题也是chatGpt起的,这是经常头疼类名应该怎么起的人的福音。

生成伪代码:

在技术方案设计或者讨论的时候如果需要写一些代码,可以尝试。

代码优化

如:代码bug修复:

甚至帮你把代码重写

依然可以,如果你想把代码用lambda重写,让它来试试。

技术资料翻译:

这是截取的G1英文文档的一段描述,这里面包含了一些G1垃圾回收器的参数信息,翻译时这些应该保留为英文,新生代和老年代这些特有名词也最好用英文表示才更专业,这些细节它都做到了,且它的翻译与中文版本的差别不大,几乎没有错误。

其他功能

如: 算法实现:

以上测试数据都比较偏简单,但依然能看出它的潜力。纯业务场景代码需要结合实际项目,相信如果让它学习训练某一个项目之后,或者他真的可以写出一些业务功能的代码来。google等一系公司也在研究AI编程可能行,足以说明其潜力。

可以在idea里安装NexChatGPT插件,方便随时调用查询。 如果有更好的使用场景idea,欢迎留言讨论。

ps,最后一问:

ChatGPT:让程序开发更轻松的更多相关文章

  1. DTSE Tech Talk丨第3期:解密数据隔离方案,让SaaS应用开发更轻松

    摘要:解读云上前沿技术,畅聊开发应用实践.专家团队授课,答疑解惑,助力开发者使用华为云开放能力进行应用构建.技术创新. 围绕当下许多企业青睐的SaaS应用开发,华为云DTSE技术布道师李良龙为大家带来 ...

  2. So Easy!让开发人员更轻松的工具和资源

    这篇文章给大家分享让开发人员生活更轻松的免费工具和资源.所以,如果你正在寻找一些为迅速解决每天碰到的设计和开发问题的工具和资源,不要再观望,试试这些工具吧.这些奇妙的工具不仅会加快您的生产,也让你的工 ...

  3. 技术分享:Dapr,让开发人员更轻松地构建微服务应用

    最近一直在学习微服务相关的技术.微服务架构已成为构建云原生应用程序的标准,并且可以预见,到2022年,将有90%的新应用程序采用微服务架构.微服务架构提供了令人信服的好处,包括可伸缩性,松散的服务耦合 ...

  4. 10款让WEB前端开发人员更轻松的实用工具

    这篇文章介绍10款让Web前端开发人员生活更轻松的实用工具.每个Web开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具,所以如 ...

  5. 十款让 Web 前端开发人员更轻松的实用工具

    这篇文章介绍十款让 Web 前端开发人员生活更轻松的实用工具.每个 Web 开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具, ...

  6. 【转】十款让 Web 前端开发人员更轻松的实用工具

    这篇文章介绍十款让 Web 前端开发人员生活更轻松的实用工具.每个 Web 开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具, ...

  7. 【纯·技术干货】更 App 化的小程序开发

    2018 年 10 月13 日,由又拍云和知晓云联合主办的 Open Talk 丨2018 小程序开发者沙龙系列活动广州站拉开帷幕,糗事百科前端负责人宋航在沙龙上做了<更App化的小程序开发&g ...

  8. 人生维艰,何不利用开源.NET函数库让工作更轻松

    今天推荐的文章会谈到一些让你工作更轻松的开源.NET函数库. 即使业界有时候认为.NET开源社区不太健康,很多开发团队都更多依赖于微软提供的东西来开发.不过最近在.NET世界中还是诞生了一些优秀和有意 ...

  9. linux一句话问答(网络无关篇+网络相关篇+程序开发篇+经典图书)

    一句话问答(网络无关篇+网络相关篇+程序开发篇+经典图书) --------------------------目录-网络无关篇-目录-------------------------- 0001 修 ...

  10. 黑马程序员:轻松精通Java学习路线连载1-基础篇!

    编程语言Java,已经21岁了.从1995年诞生以来,就一直活跃于企业中,名企应用天猫,百度,知乎......都是Java语言编写,就连现在使用广泛的XMind也是Java编写的.Java应用的广泛已 ...

随机推荐

  1. 08 | 白话容器基础(四):重新认识Docker容器

    你好,我是张磊.今天我和你分享的主题是:白话容器基础之重新认识Docker容器. 在前面的三次分享中,我分别从Linux Namespace的隔离能力.Linux Cgroups的限制能力,以及基于r ...

  2. ssh免交互

    sshpass -p the_password ssh -o StrictHostKeyChecking=no root@domainname_or_ip remote_command  #远程执行命 ...

  3. 在链表上实现 Partition 以及荷兰国旗问题

    在链表上实现 Partition 以及荷兰国旗问题 作者:Grey 原文地址: 博客园:在链表上实现 Partition 以及荷兰国旗问题 CSDN:在链表上实现 Partition 以及荷兰国旗问题 ...

  4. Qwt开发笔记(一):Qwt简介、下载以及基础demo工程模板

    前言   QWT开发笔记系列整理集合,这是目前使用最为广泛的Qt图表类(Qt的QWidget代码方向只有QtCharts,Qwt,QCustomPlot),使用多年,系统性的整理,本系列旨在系统解说并 ...

  5. 【每日一题】【队列的实现类】【每层元素个数】2022年1月11日-NC15 求二叉树的层序遍历

    描述给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历)例如:给定的二叉树是{3,9,20,#,#,15,7}, 注意:每一层上元素的个数 解答: import java.util ...

  6. Github Actions 学习笔记

    Github Actions是什么? Github Actions 官方介绍:GitHub Actions是一个持续集成和持续交付(CI/CD)平台,允许您自动化构建.测试和部署管道.您可以创建构建和 ...

  7. 如何基于 Redis 实现分布式锁

    什么是分布式锁 分布式锁:不同进程必须以互斥方式使用共享资源的一种锁方法实现. 实现分布式锁的基础 互斥.任何时刻,只有一个客户端持有锁. 无死锁.最终总是有可能获得锁,即使持有锁的客户端已经崩溃. ...

  8. plsql developer切换用户

    方法1: 1.双击plsql developer桌面软件图标启动软件 2.在连接窗口中填写连接信息,连接数据库 3.在新建窗口下拉选项中,选择命令窗口功能 4.在工作区内会出现当前用户连接数据库的窗口 ...

  9. java中继承的内存分析

    本文主要讲述java中继承的内存分析. 示例1,代码如下: public class EncapsulationTest { public static void main(String[] args ...

  10. 10、RestTemplate方式实现远程调用Client

    一.JSONObject类详解: JSONobject是FastJson提供的对象,在API中是用一个私有的常量map进行封装的,实际就是一个map,只不过 FastJson对其进行了封装,添加了很多 ...