借助GPT从零开发一个软件的功能模块

大家好,我是峰兄,一名世界五百强外企的程序员,一个励志要做二更(每两天更新一篇文章)的男人,不过我现在已经把二更的含义变成了每周更新两篇文章,还好我是逗B人设,不然天天改flag,脸都不要了😭。这里也希望我的内容能给大家带来一点信息增量,一点点快乐。


上个周没有更新,不是峰兄偷懒,是因为最近看大家都在做小报童,跟几个朋友也合伙搞了一个AI编程变现的小报童,今天总算整的差不多了,忙里偷闲,来鱼皮大佬的编程导航星球,写点内容,也算是对上周没更新的一个小小弥补。


本文主要讲如何借助GPT从零开发一个软件的功能模块,适合做开发的同仁看看,主要从需求分析、数据库建模、接口文档撰写、后端代码实现、单元测试这五个方面进行讲述,其实每个部分如果拿出来都可以单独写篇文章,这里主要还是提供一个思路,具体大家有需求的可以自行扩展。




一.前言


首先,我们问一下GPT,软件开发的整体流程


然后,我们找出其中核心的几步,借助GPT来辅助我们设计开发。这里我们以登录模块为例,因为大家都知道,一个软件或者系统也是由一个个的功能模块实现的,把一个功能模块实现了,其他的模块只是实现的功能不同,实现思路也是大同小异,如果一次性实现一个大的系统,由于涉及的内容过多,反而会没有重点,不利于大家的理解。


这里我直接问GPT:

我现在要做一个登录模块,希望你从需求分析、数据库建模、接口文档、代码实现、单元测试这五个方面分别描述一个登录模块需要实现的内容


然后,针对每一部分单独提问,生成我们需要的内容


二.需求分析


针对以上内容中的需求分析部分,帮我生成一个登录模块的PRD,包括概述、用户使用流程、相关页面、功能详细描述、流程图、类图等。



三.数据库建模



针对上述内容中的数据库建模部分,我希望你针对登录模块的功能,按照业内数据库建模规范和最佳实践给我写一份数据库建模表格文档,包含表名、列名、数据类型、约束条件、描述、枚举值(用数字代替),ID不是自增,使用雪花ID算法生成,标准字段:create_time、update_time、deleted,我的数据库是MySQL8,相关的字段comment注释、表comment注释、需要建立索引的也需要加上,建表语句和索引语句也请告诉我。


四.生成接口文档



接口文档记录了API的用法和限制,确保客户端和服务器端正确地交互,提高代码重用性和可维护性。


按照前面生成的表结构来分析,如果需要你设计一份标准的登录模块的基于RESTful接口文档,每一个接口都需要

进行分析和论证必要性和设计合理性,请列出所需的接口。要求:返回OpenAPI规范JSON格式,描述信息需要中文



以下是这些接口的OpenAPI规范JSON格式的一个示例概要:
{
"openapi": "3.0.0",
"info": {
"title": "登录模块API",
"description": "为登录模块提供的RESTful API接口。",
"version": "1.0.0"
},
"paths": {
"/login": {
"post": {
"summary": "用户登录",
"description": "用户使用用户名和密码进行登录。",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"username": {
"type": "string"
},
"password": {
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "登录成功"
},
"401": {
"description": "认证失败"
}
}
}
},
"/register": {
"post": {
"summary": "用户注册",
"description": "新用户注册。",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"username": {
"type": "string"
},
"password": {
"type": "string"
},
"email": {
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "注册成功"
},
"400": {
"description": "请求参数错误"
}
}
}
},
// 其他接口的定义类似
}
}



五.完成后端服务



接下来我们就进入开发环节,我希望的技术栈是使用PHP的laravel框架进行开发,你可以一步一步教我如何搭建一个项目吗?请帮我实现上述中的用户登录接口


六.单元测试


做过开发的朋友都知道,其实单元测试是非常耗费时间的一个环节。有时候开发一个功能可能1小时就能完成,但写单元测试可能会远超开发时间,现在有了GPT,单元测试就so easy了!


针对上述的login方法,帮我写一个单元测试用例,要求:核心代码需要加上适当的中文注释。




0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
峰兄
下载 APP