开一个新的系列,ChatGPT辅助编程实践,以下给出一些常用的提示和用法,欢迎大家在评论区补充更多的用法。 祝大家都能用好ChatGPT这把趁手的兵器,大大提高效率~

推荐阅读:建议收藏:超详细ChatGPT(GPT 4.0)论文润色指南+最全提示词/咒语

基础篇——让代码编写更简单

开始之前

为了让ChatGPT更加准确的回答有关代码方面的问题,注意两点咒语心法。

1)保证提问的问题,准确,具体

2)不妨试试,在提示词后面,紧跟一句“请一步步思考”,“请一步步考虑”,“请务必认真回答”,“如果你认为无法安全修改代码,请回答否”之类的词,这样的指示有助于提高ChatGPT的回答精确度。有时候在提示语后面给个提醒,它会变得完全不一样。

更多更细致的一些,针对提示词设计层面的一些方法,也可以参考我的另外一篇文章,有一些方法是通用的。

建议收藏:超详细ChatGPT(GPT 4.0)论文润色指南+最全提示词/咒语

代码理解

假如一家新公司,或者上手一个新项目,面对业务复杂、代码量大的场景,有时候你需要用ChatGPT作为你的编程顾问,帮你快速梳理出代码的逻辑。

代码解释

提示:这段代码主要用于[如果能给出具体的场景更好],我初步接触这段代码,需要快速读懂,请帮我详细梳理出代码的主要流程,用小标题 + 代码解释/作用 +代码片段的形式给出。

注意,之所以这里用“小标题 + 代码解释/作用 +代码片段”的形式,是因为这种方便自己做笔记整理,大家可以按照自己想要的形式来。

记忆检测

注意,由于ChatGPT的记忆有窗口限制,因此,在交流一段时间之后,如果还需要对原始代码进行继续提问,那么可以用下面这个方法来检测最初的那个问题它是否还记得,如果不记得的话,就得重新输入,保证它的回答不会跑偏。

提示:为了怕你忘记,检查你一下,你还记得咱们刚刚讨论的是哪个代码吗,请给出[代码名称或者函数名称]的原始实现。

核心线索

有时候对于庞杂的代码,或者复杂的SQL查询,你需要梳理出核心线索。

提示:这个SQL查询中,涉及的表过多,我有点乱,请帮我梳理出一条核心的线索,帮助我更好的读懂它。

代码优化

向ChatGPT寻求代码优化建议,以提高代码可读性和可维护性。

提示:如何重构以下Python代码,使其更易读和可维护?
[在这里粘贴你的代码]

注意,为了更加清晰看出修改之后的代码。可以用以下提示:

提示:[这里放你的要求], 请你帮忙修改,不涉及修改的代码省略即可。

下面的所有用法同理。

这样GPT给出的答案就会更加清晰易读。更重要的事,解决「因为代码过长导致无法一次性输出完整」的烦恼。

代码改写

有时,你可能需要将某个功能的代码从一种编程语言改写为另一种。这时,你可以请ChatGPT帮忙。

提示:我有这个JavaScript函数,需要将其改写为Python。你能帮我完成转换吗?
[在这里粘贴你的JavaScript函数]

Code Review

菜菜的自己在代码被大佬Code Review之前,终于有了一个得力的Code Review助手!

让ChatGPT审查你的代码并提供改进建议。

提示:请审查以下Java代码并提供改进建议。
[在这里粘贴你的代码]

错误排查

假设你有一段Java代码,其中存在一些错误,你可以请ChatGPT帮助你找出并纠正这些错误。

提示:我有以下一段带有错误的Java代码。你能帮我找出并纠正这些错误吗?
[在这里粘贴你的Java代码]

深度交互

在与ChatGPT交互时,有时需要多次往返才能得到满意的结果。例如,你可能在调试一个复杂的Python算法:

用户:我在这个Python算法中遇到了问题。它没有给我预期的输出。你能帮我找出问题所在吗?
[在这里粘贴你的Python算法]

ChatGPT可能会首先提供一些建议。如果这些建议仍不能解决问题,你可以继续与ChatGPT交流,直至找到问题的根本原因。

用户:我尝试了你的建议,但问题仍然存在。你能再看一下,提供更多见解吗?

通过与ChatGPT进行深度交互,你可以充分利用其能力,提高编程效率。

升级篇——理解复杂的业务需求

实际工作中的业务往往是复杂的,代码与代码之间有着多种关联关系,这个时候,如何使用ChatGPT解决复杂的业务需求,需要一点体力活。

首先,你需要了解你的业务逻辑。确保你明白每个模块的工作原理,每个函数的输入和输出,以及它们之间的相互关系。这是解决复杂问题的第一步。

其次,尝试将复杂的问题分解为一系列小问题。ChatGPT在处理小问题上表现得更好,因此,将大问题分解为小问题可以提高其解决问题的准确性。

以一个电商应用的订单管理系统作为例子。假设我们需要ChatGPT帮助我们设计一个新的订单分派功能,此功能需要将新订单分派给对应的仓库处理。

我们可以将这个复杂问题分解为以下几个小问题:

  1. 确定仓库:确定哪个仓库应处理订单,这可能取决于产品库存和订单的发货地址。

  2. 分派订单:一旦确定了仓库,我们需要在系统中分派订单到选定的仓库。

  3. 确认订单:仓库接收订单后,需要确认并开始处理。

  4. 订单状态更新:在订单的整个生命周期中,我们需要跟踪并更新订单的状态。

针对每个小问题,我们可以分别向ChatGPT寻求解决方案。例如:

用户:我正在设计一个订单管理系统。我需要确定如何将订单分配给仓库。我们应该考虑什么因素来确定哪个仓库处理订单?

ChatGPT可能会给出以下答案:

ChatGPT:在确定订单应该分派给哪个仓库时,你应该考虑以下因素:

  1. 库存:你应该查看每个仓库的库存,看看他们是否有足够的商品来满足订单。

  2. 发货地址:你应该考虑订单的发货地址和每个仓库的位置。通常,最接近发货地址的仓库可以更快地完成订单。

  3. 仓库的订单处理能力:某些仓库可能已经忙于处理其他订单,因此你也应该考虑仓库的订单处理能力。

根据这个回答,你就可以开始设计你的订单分派逻辑了。同样地,你也可以针对上述其他小问题提问,从而得到解决方案。通过将大问题分解为小问题,你就可以充分发挥ChatGPT的能力,解决复杂的业务需求。

工具篇——自动化代码提示、对话

GitHub Copilot

强烈推荐使用!!!
对于一些简单的编程任务,GitHub Copilot提供了交互体验更好的代码推理。
由于目前Copilot X还没有开放使用,因此Copilot最重要的功能仍然是补全代码。

1)在写代码前,先写注释
给出核心思路,Copilot会自动进行代码补充,然后可以自行校验,或者将给出代码补充,交给ChatGPT-4进行校验。
例如,对于Spring定时任务,需要在@Scheduled注解中给出CRON表达式,只需要像下面一样先写上注释即可。

2) 自动注释,反向理解代码

同样的道理,对于不理解的代码,可以用Copilot注释补全的方式,尝试理解代码。

编程从未如此轻松:ChatGPT如何助你一臂之力相关推荐

  1. 轻松学c语言编程.pdf等,轻松学编程:轻松学C语言编程 PDF

    资源名称:轻松学编程:轻松学C语言编程 PDF <轻松学编程:轻松学C语言编程>从初学者的角度出发,以通俗易懂的语言.丰富多彩的实例,详细介绍了使用C语言进行程序开发应该掌握的各方面知识. ...

  2. 文本生成(一)【NLP论文复现】Unified Language Model 文本生成从未如此轻松

    Unified Language Model 文本生成从未如此轻松 前言 UniLM How to build UniLM Get 2D MASK Send 2D MASK to Bert 使用Uni ...

  3. 狂刷《Java权威面试指南(阿里版)》,助你一臂之力,事半功倍

    莫慌莫慌,"面试造火箭,工作拧螺丝" 说得不无道理,偶然从朋友那得到的这份Alibaba内部疯传<Java权威面试指南(阿里版)>堪称精品,或可能助你一臂之力,事半功倍 ...

  4. 这份 Alibaba 内部疯传《Java 权威面试指南(阿里版)》堪称精品,面试助你一臂之力,事半功倍

    今年金三银四.金九银十情况都不太好,很多小伙伴都没找到工作,不少小伙伴都在经历了这个惨痛的寒冬后开始暗戳戳的备战明年的金三银四了,"面试造火箭,工作拧螺丝" 说得不无道理,偶然从朋 ...

  5. 从合规走向卓越,QAD助您一臂之力

    当汽车行业面临风险或是变革,企业最先想到的是如何灵活应对以符合行业的最新标准,这是理所应当也是必要的策略.但换言之,企业所面临的也许并不是"风险",而是实现卓越运营的"挑 ...

  6. boot客户管理系统实训报告_客户太多,客户转化困难?分析报告迟迟出不来,CRM客户管理系统助你一臂之力...

    原标题:客户太多,客户转化困难?分析报告迟迟出不来,CRM客户管理系统助你一臂之力 作者:Teamface 企业中,每天接触的客户太多,时间太长根本记不住谁是谁,难以分清楚是否还是企业的意向客户,很容 ...

  7. ue4设置图片大小_如何达成照片级渲染效果,UE4来助你一臂之力

    原标题:如何达成照片级渲染效果,UE4来助你一臂之力 silujy:Lasse Rode在探求使用实时渲染工具表现照片级场景的过程中,利用虚幻引擎做了一些颇为有益的尝试.表现对象则是一间唯美的,几乎是 ...

  8. 上海网站排名优化找哪家?清法网络助你一臂之力

    说到网站排名优化,相信大部分企业都不陌生.它是指通过搜索引擎优化(seo)方式,使品牌网站在搜索结果中排名靠前.不过,由于网站的自然排名一般是搜索引擎对所有相关网页抓取结果自动分析.自动排名的体现,想 ...

  9. IB学霸分享学习经验(家长如何助孩子一臂之力)

    一.通用的学习经验 1.找到好的学习伙伴 和内地高中会一直上学至高考前不同的是,香港大部分学校有study leave的传统,就是从高考前一个多月至两个多月(按学校自己的规定)开始放假,让考生能够自由 ...

最新文章

  1. django ---- models继承
  2. from __future__ import print_function 介绍
  3. 使用netty搭建一个简单的聊天室
  4. 图的遍历(Java)构造器
  5. bob-tong 字符串函数之Strtok()函数
  6. python 自动运维架构师_运维架构师-Python 自动化运维开发-013
  7. Java与MySQL连接报错_java连接数据库报错(
  8. Dubbo(八)使用配置类方式实现服务提供者消费者dubbo配置
  9. mysql的socket文件_修改socket文件, MySQL启动报错
  10. STM32之输入捕获
  11. 详细讲解css单位px,em和rem的含义以及它们之间的区别
  12. tpl-spring-mybatis 模板工程
  13. Grep与web漏洞挖掘转
  14. Apple ID 被盗用的 5 个征兆,遇到其中一种,建议赶快改密码
  15. linux单网卡配置vlan,三线机房Linux服务器单网卡配多VlanIP
  16. 公司买的机器不能自己装系统,问对方几天没回一个字
  17. android设计常用字体,界面设计必备!全方位科普常用的字体规范
  18. 深度学习视频教程推荐
  19. Ubuntu恢复官方默认源
  20. 计算机控制面板设置密码,如何设置修改电脑的开机密码

热门文章

  1. 探索支付宝账单的技术实现
  2. 电商系统中SPU、SKU的区别
  3. javascript为数字添加千分符
  4. Windows装机必备软件备忘
  5. 洛谷 P5858 「SWTR-03」Golden Sword
  6. 期末考试复习笔记(标红表示重要)
  7. 卡巴斯基安全软件更新失败解决办法
  8. 也说人人都是产品经理
  9. 卡巴斯基郑启良:支持信创发展是卡巴斯基的重要使命
  10. TUSB3410驱动