这些内容以前均在群里同频过,有些点还是很有价值的,我把这些内容整理、收集汇总,沉淀在此处,方便大家回头阅读,寻找灵感。
需求内容:营销系统识别特惠单订单规则配置
整个需求内容的拆解还是得工程师来做,但中间copilot可以给很多的提示帮助,来进行提效。
看下面这个案例,在进行拆解过程中,可以提示后面的内容,还很准确。
再看看这个智能提示效果是不是可以称得上 智能 了,琢磨猜测你后续要做的事情,准确率很高。
需求拆解完后,第二步是进行数据库表结构设计,这块完全是copilot根据注释词设计出来的。
整个设计过程如下图所示,反反复复的交互到最终采纳
copilot最终设计4张表,策略表、城市表(我们本来就有字典表,忽略即可)、策略城市关联表、策略更改日志表,如下图,建表语句都是copilot写的,质量不错,工程师稍微改改名字就行。
上图中的策略日志表再说几句,一开始并不能设计出这个最终满足产品页面功能的表结构,需要工程师把表的功能再详细描述下,如上图前面的那些汉字,最终 copilot 设计了出来。
2023.6.28 chatGPT探索进展同频:
今天收获还是蛮大的,数据库表设计搞定后,就要开始写mybatis mapper类、xml sql语句、以及Service、controller了。
进展:
1、dao相关的实体JAVA类 DO对象,插件自动生成,基本不用手写;
2、mybatis mapper及xml sql语句,普通插入、更新,插件自动化搞定,基本不用手写;
3、领域实体DTO的JAVA类,通过写注释,copilot自动把整个类的字段全部输出,不用手写字段;
4、interface接口定义,新模式:工程师写注释,copilot自动写接口,而且到一定程度后,copilot自动写注释、自动写接口,工程师直接回车回车就行,还写的很准,这点真赞!;
下一步,接口实现,开始让 copilot写业务逻辑了,看看有什么效果,有结果了再同频。
2023.6.30 chatGPT探索进展同频:
今天开始探索实现接口逻辑了,保存特惠策略接口,整体上开始需要自己写代码了,但可以提效的地方也蛮多,文字和图片如下:
1、通过注释,//注入 SaleStrategyMapper、SaleStrategyCityMapper、SaleStrategyLogMapper ,copilot可以自动写完6行代码; 省去工程师一行行敲字时间,这块提效👍🏻
2、saveStrategy 接口中,上来先检查参数,仅仅靠写注释,让copilot全部写参数校验,试了几次,貌似不行。但当我写完一行if参数校验后,后面的一系列tab就可以了,这块提效。👍🏻
这块的精彩点:
因优惠比率字段的注释里面写了0-100整数,copilot提示了if 参数校验字段在0-100之间,逻辑很严谨。 👍🏻
根据注释,结束日期字段 > 开始日期字段,优惠最大值>优惠最小值 也提示出来了, 👍🏻
3、再主方法中直接 //检查参数, copilot 提示使用刚才创建的 validateParams 方法,直接tab采用。提效👍🏻
4、接下来要把DTO对象转换成3张表的DO对象,精彩的很,convert类基本上不用工程师写了,copilot写完后,tab采纳就行,稍微改改字段名。尤其是DTO转换cityDO对象时,是将DTO的一个字段list转换成cityDO的多个list,copilot能感知到并且提示正确。 提效很大👍🏻
5、数据库事务方法,copilot暂时写不出来,可能是没提示对。在保存数据库时,copilot提示cityDO对象为batchInsert ,这个插入方法我还没有写。 非常赞👍🏻
converter 类也有一些插件可以实现两个类之间的convert,比如佼佼者 genCopyMethod 就挺好用,👍🏻!
这块普通类跟 copilot类似功能,都能完成效果。但是这个特殊点的,copilot的强大就体现出来了,
入参的一个字段是 list ,要把这个转换成结果list ,还有几个字段赋值下,差异就体现出来了。
视频看前20s就够了。
2023.7.3 chatGPT探索进展同频:
今天尝试写controller,调用svc接口,中间遇到的智能提示,前几天都遇到过了,没什么新的亮点,不过依然提效,这里再分享下。
1、通过注释 // 注入logger类,//注入Service ,能自动插入正确代码;
2、因之前写过一个http请求案例,copilot根据注释 //针对策略详情页,写获取详情页信息、保存详情页信息、作废策略ID的http接口 把三个接口都写出来了,而且带有访问逻辑;这点不错
3、代码转换,根据入参两个 id,//转化实体 ,能自动创建 dto类,并set好对应值,并调用接口。 以下是对应图片:
彩蛋:
gpt3.5 vs gpt4.0 ,体感上,同一个问题,GPT4 像是一个有经验的专家工程师给的答案, GPT3.5 像是一个刚刚工作没几年,会基础但不能完全解决问题的初级工程师。