ChatGPT提效:告别CRUD

前言

随着AIGC的发展以及大语言模型的成熟,各种AI应用眼花缭乱,以至于我们看到各种新奇的应用都会产生焦虑,我有一天会不会被淘汰?且看后文分析。AIGC的发展与逐渐成熟已经是无可逆转的局势,既然我们打不过为何不加入进来,今天这篇文章将带领你掌握使用ChatGPT帮助我们程序员提高工作效率,摆脱焦虑。

本人java CRUD boy一枚,在工作搞了五六年CRUD,实在觉得CRUD没什么技术含量,但是呢,实际业务开发中哪里有那么多高并发、有技术难度的场景,整个产品百分之八十都是CRUD堆积起来的,那么作为一个老鸟实在不想花费太多精力在CRUD上面,于是自己探索了一套关于CRUD的提示词分享给所有苦于CRUD的小伙伴,帮助你们摆脱CRUD噩梦,解放出更多的时间提升自己的技术,多研究技术、算法。自己能力提升了,可以跳槽或者晋升,拿到更多的薪资难道不香吗?

提效成果

相信大家更关心的是看了本篇文章,我究竟能提升多少效率,能够节省多少时间。

维度效率提升
时间成本50%
代码量80%

本人在工作开发中使用了半年多的时间,结合自身的情况,我来讲讲提效成果,保守一点估计可以在做CRUD开发过程中提效50%,可以节省将近一半的时间。前提是你对我下面总结的提示词非常熟悉,应用恰当。从代码量的角度,可以帮我们自动生成80%的代码,剩余20%需要我们自己完善以及优化AIGC提供给我们的代码。从这个角度来看,A现阶段AI大模型根本无法替代我们的工作,剩余20%是非常重要的。

适用人群

所有苦于CRUD的程序员,本提示词适用于所有语言。
本人不建议新手或者连CRUD都写不好的初级程序员去看本篇文章。为什么?AI提效本质上不是替代你,而是你的小弟帮你干活而已,如果你自己的CRUD都没搞明白,让AI写出的代码大概率也是垃圾代码,bug百出,建议这部分人群先写好CRUD代码,夯实基础,而不是想的是投机取巧。

使用模型

首推ChatGPT的GPT4、GPT4o,GPT3.5也是可以的,只是效果差一点,这个是本人使用半年多下来效果比较好的大模型。相比之下,科大讯飞、文心一言、通义千问在我这套提示词下效果不太理想。具体的模型小伙伴可以以实践为准,毕竟大模型在不断发展。

正文开始

需求说明

在我们日常开发中,我相信公告管理这个功能需求还是比较常见的,今天以此为例,来展示一下,这套提示词是如何应用的。具体的需求就不过多阐述,直接看下文的原型图理解。
公告分页查询
新增公告

ChatGPT示例对话

由于对话太长,我将完整对话放在了当前博客对应的资源下,在此博客的顶部查看。也可以通过百度网盘下载本地查看。
下面是关键部分的截图

  • 理解需求
    在这里插入图片描述
  • 数据库建模
    在这里插入图片描述
    如果不对,提出修改意见,让AI修改。数据库建模越准确,生成的数据库建表语句就越准确。
    在这里插入图片描述
  • 数据库建表语句
    在这里插入图片描述
  • 设计restful接口
    这里是AI的分水岭,有一些大模型是无法理解需求给出准确的接口数,建议多试几次,或者直接更换更好的大模型。
    在这里插入图片描述
    在这里插入图片描述
    如果有不对的地方,提出意见,让AI修正。这里修正完能让后续代码生成更准确
    在这里插入图片描述
  • 业务功能设计
    在这里插入图片描述
    给出意见修正业务流程,可以让生成的代码更符合预期
    在这里插入图片描述
  • 功能代码生成
    在这里插入图片描述

提示词汇总

  • 假如你是一位Java架构师,现在我正在开发大数据项目中的数据服务相关功能,我希望你能协助我去开发数据服务相关功能,接下来我会给你一份需求文档,你先充分分析与理解需求文档内容,为我们后续开发做准备,我再介绍一下我的开发环境,我的电脑操作系统是windows 10,也安装好了MySQL 5.7数据库、JDK 11、redis6.0和IDEA。我已经做好研发准备了,你准备好了吗?(可选加上当前项目的技术栈)

确保需求文档完整,条理清晰,否则可能会有很大误差

  • 根据上文给的业务需求,我希望你按照业内数据库建模规范和最佳实践给我写一份数据库建模表格文档,包含表名、列名、数据类型、约束条件、描述、枚举值(用数字代替、用大写英文替代,保持简洁,所有枚举项列举完全),ID是自增的,针对是否判断字段使用bit类型,标准字段:create_time、update_time、creator、modifier、version,针对从属表无需加上标准字段。

  • 如果ChatGPT给出的数据库建模文档不符合要求,可以通过提示词让它修正,例如:上文中数据建模文档中有几个问题,第一个问题,XXX。第二个问题,XXX。请求按照我的要求修正。

  • 第一步工作我们已经完成了,我在电脑上已经安装好了MySQL 5.7,请按照前面生成的数据库文档进行表结构设计,在进行表结构设计时,需要考虑到查询性能以及数据的规模和增长趋势,以确保系统能够承受未来的数据访问负载,并且相关的字段comment注释、表comment注释、需要建立索引的也需要加上。然后建表语句和索引语句告诉我。要求:不要采用外键关联、表加上存储引擎和字符集。

  • (可选) 我需要每张表5条左右的测试数据,覆盖了每个字段的情况,特殊字段符合中文风格要求。每条SQL语句都可以直接执行,以插入测试数据。

  • 按照前面业务需求和生成的表结构来分析,如果需要你设计一份标准的基于RESTful接口文档,每一个接口都需要进行分析和论证必要性和设计合理性。预计你会出多少个接口?

  • 将你设计的完整的接口文档发给我,每个接口包括接口描述、HTTP 方法、请求路径、请求参数、响应参数等

  • 上面你给出的接口文档有几个问题需要更正一下,第一个问题,XXX。第二个问题,XXX。

  • (可选)接下来我们就进入开发环节,我希望的技术栈是Java17+SpringBoot+MyBatisPlus+Lombok的方式进行开发,你可以一步一步教我如何搭建一个项目吗?

  • (可选)基于前面你生成的4张数据库表结构,接下来我们建实体类,我要求:import语句、lombok、字段注释、类注释都需要

  • (可选)基于前面你生成的4个实体类,接下来我们建Mapper层接口,要求继承MyBatisPlus的BaseMapper类,但是不需要写任何接口

  • 接下来我们就进入开发环节,我现在项目使用的技术栈是Java11+SpringBoot2.3.12.RELEASE+MyBatis Plus3.5.0+Lombok+swagger的方式进行开发,项目开发过程中所有返回给前端的数据都需要定义vo视图对象。基于你提供表设计,我已经通过idea的MybatisX插件生成了基本的entity、mapper、service。基于前面的需求文档和插件生成的基础代码以及设计的接口文档,接下来我们开始进行业务功能设计,要求:包含业务处理流程,先不用告诉我代码实现(备选如果业务比较复杂用到设计模式可以使用这段:基于前面的需求文档和插件生成的基础代码,接下来我们开始进行业务功能设计,要求:利用面向对象的设计原则和设计模式,确保业务功能的实现既健壮又易于维护,先不用告诉我代码实现)

  • 根据上面的业务功能设计,先给出新增公告功能的完整实现代码,要求:关键代码加上注释。

  • (可选)基于前面实现的EmployeeService,接下来我们要为所有方法进行单元测试用例的编写,要求:核心代码需要加上适当的中文注释,结合spring-boot-starter-test实现。我需要EmployeeService类中所有的方法写出可测试的单例,并不是一个Demo

提示词核心思想

整体上围绕我们日常开发功能的思路一步步的引导AI去理解我们用的技术栈、需求、数据库设计、接口文档、功能处理流程、代码规范、单元测试等等。上面给出的提示词只是抛砖引玉,理解如何引导AI后,你可以写出自己的提示词。

结尾

从上面的示例以及提示词可以看出,通过AIGC可以帮我们生成大部分CRUD代码,但是项目有一些细节是不太好很方便的告诉大模型的,我们需要自己完善,毕竟我们想要所有功能都交给大模型处理是不现实的。
感谢大家看完这篇文章,希望这篇文章能够帮助拥抱AI,帮助大家提高工作效率,节省时间提升自己能,人人都能成为百万架构师,共勉。

友情提醒:针对使用频率不高的小伙伴,可以国内免费的大模型、GPT3.5做替代,没必要花那么多钱开GPT4的会员。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/728227.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

财务RPA是什么?解析财务RPA的定义和功能

RPA技术作为人工智能领域的代表之一,因其可以高效解决各种基于一定规则的重复而复杂的业务流程,帮助企业节约人工成本并提升效率,如今已经普及到各行各业。而财务领域存在大量规则明确但机械重复的工作和业务流程,这些工作场景是财…

干货 | 使用 Navicat BI 解锁数据的力量

商业智能(BI)是一种将数据转化为可执行洞察的实践,能够帮助业务领导者提升整体业绩。这个过程中最重要的一个阶段是数据探索和可视化阶段,它涉及通过报告将数据组织并转化为有意义的信息。为了让数据更易于理解,BI 专业…

了解CDN:提升网络性能和安全性的利器

在当今的数字时代,网站性能和安全性是每一个网站管理员必须关注的核心问题。内容分发网络(CDN,Content Delivery Network)作为解决这一问题的重要工具,逐渐成为主流。本文将详细介绍CDN的定义、作用及其工作原理&#…

【投稿优惠|稳定出版】2024年体育、健康与食品安全国际学术会议(ICSHFS 2024)

【投稿优惠|稳定出版】2024年体育、健康与食品安全国际学术会议(ICSHFS 2024) 2024 International Conference on Sports, Health, and Food Safety(ICSHFS 2024) 会议简介: 2024年体育、健康与食品安全国际学术会议(ICSHFS 2024…

Linux源码学习笔记01-Linux内核源码结构

Linux内核特性 是一个类Unix操作系统,但不是简化的Unix;不仅继承了Unix的特征,还有其他特性。 Linux内核的组织形式:整体式的结构,方便每个领域的开发人员参与开发;Linux进程调度方式简单高效&#xff1a…

打字速度对编程的影响大吗?

知道打字速度对编程的影响大吗?实际上,在编程的世界里,关键在于思考,而非打字速度。要明白,编程与日常聊天中的打字有着本质的区别,如果编程仅仅取决于打字速度,那它岂不就等同于打字员的工作了…

Rust中的数据抓取:代理和scraper的协同工作

一、数据抓取的基本概念 数据抓取,又称网络爬虫或网页爬虫,是一种自动从互联网上提取信息的程序。这些信息可以是文本、图片、音频、视频等,用于数据分析、市场研究或内容聚合。 为什么选择Rust进行数据抓取? 性能:…

Nature正刊!亚利桑那大学博士生陈舒立一作兼通讯最新成果!揭示亚马逊雨林干旱响应的生物地理学机制

2024年6月19日,国际知名学术期刊《Nature》发表了一项美国亚利桑那大学Scott Saleska教授团队的最新成果“Amazon forest biogeography predicts resilience and vulnerability to drought”。通过将森林样地调查数据与遥感观测相结合系统揭示了亚马逊雨林干旱响应的…

动态轮换代理在多账户管理中有何用处?

如果您要处理多个在线帐户,选择正确的代理类型对于实现流畅的性能至关重要。但最适合这项工作的代理类型是什么? 为了更好地管理不同平台上的多个账户并优化成本,动态住宅代理IP通常作用在此。 一、什么是轮换代理? 轮换代理充当…

东芝-Soft Limit 报警及其解决办法

灵感来源与生活,在生活中总能有意想不到的惊喜,下面来看看小编今天的惊喜!!! 今天不知道怎么了,有人来找就说是机器人坏了,一直报警,重启关机回原点也没有用。 意外到来,…

Dynamics 365 on-premise 隐藏高级查找导出按钮

提示 着急可以直接看结果代码部分 背景 Dynamics 365 on-premise中有个高级查找的功能,查询的结果支持导出,如下图 业务反馈这个有数据安全风险,要修改显示规则。 一开始想着能用RibbonWorkbench改,就很爽快得答应了业务。结果用RibbonWorkbench改不了。 反复尝试 既…

【EI稳定检索】2024年经济发展与商业文化国际会议(ICEDBC 2024)

2024年经济发展与商业文化国际会议 2024 International Conference on Economic Development and Business Culture 会议简介 2024年经济发展与商业文化国际会议即将在贵阳市盛大开幕。随着全球经济的持续发展,商业文化日益成为推动经济进步的重要力量。为了深入探讨…

力扣144A

文章目录 1. 题目链接2. 题目代码3. 题目总结4. 代码分析 1. 题目链接 Arrival of the General 2. 题目代码 #include<iostream> using namespace std;int heightOfSoldier[110];int main(){int numberOfSoldier;cin >> numberOfSoldier;int maxHeight -1;int mi…

DataOps真能“降本增效”?

在各行各业中&#xff0c;越来越多的公司开始重视收集数据&#xff0c;并寻找创新方法来获得真实可行的商业成果&#xff0c;并且愿意投入大量时间和金钱来实现这一目标。 据IDC称&#xff0c;数据和分析软件及云服务市场规模在 2021 年达到了 900 亿美元&#xff0c;随着企业继…

“华住订房,用友入账”,YonSuite助力企业“降低成本”再进一步

在当今这个数字化、全球化的时代&#xff0c;企业对于商旅管理的需求愈发迫切。如何在保证员工出差体验的同时&#xff0c;实现成本的优化与管控&#xff0c;成为许多企业关注的焦点。YonSuite商旅费控作为一站式商旅解决方案&#xff0c;携手华住商旅&#xff0c;共同为企业提…

33.获取入口点

上一个内容&#xff1a;32.双击列表启动目标游戏 前置知识 25.入口点注入&#xff08;查看pe头&#xff09;、32.双击列表启动目标游戏 以它的代码为基础进行修改 效果图&#xff1a; 代码实现&#xff1a;原理通过读文件流的方式把文件加载到内存中然后解析pe结构 void CWnd…

gunicorn超时报错[CRITICAL] WORKER TIMEOUT

一. 问题描述 2024-06-18T08:40:39.858804039Z [2024-06-18 08:40:39 0000] [1] [CRITICAL] WORKER TIMEOUT (pid:332) 2024-06-18T08:40:40.918093090Z [2024-06-18 08:40:40 0000] [1] [ERROR] Worker (pid:332) was sent SIGKILL! Perhaps out of memory?二. 原因分析 从…

2024年一建报名汇总和常见问题答疑!

2024年一级建造师报名通知全国32个地区均已发布&#xff0c;考试100汇总如下&#xff0c;大家务必及时报名&#xff0c;千万不要错过&#xff01; ​ 报名问题 01、时间不多了&#xff0c;今年可以先考部分学科吗&#xff1f;分两年考完&#xff1f; 可以的&#xff0c;一建…

Day1:基础语法

今日目标&#xff1a;理解什么是变量、掌握常用的数据类型、学会数据类型转换 一、JavaScript 介绍 1. JavaScript 基础知识 主要讲解 &#xff1a;JavaScript 是什么、书写位置、注释、结束符、输入和输出语法、字面量。 1.1 JavaScript 是什么 是一种运行在客户端(浏览器…

企业该如何防查盗版?如何防软件后台泄密数据?

随着信息化的发展&#xff0c;企业日常办公越来越依赖互联网。终端以及普通PC终端在访问互联网过程中&#xff0c;会遇到各种各样不容忽视的风险&#xff0c;例如员工主动故意的数据泄漏&#xff0c;后台应用程序偷偷向外部发信息&#xff0c;木马间谍软件的外联&#xff0c;以…