后端开发工程师开发规范
开发规范
1 开发规范
1.1 开发流程
-
明确:
-
为什么要做这个东西,它的价值在哪里(意义)
-
这个东西要实现什么功能,它面向的用户是谁(目标用户群体)
-
它的功能后续可以有什么发展(长远性,功能扩展)
-
前期需求的澄清和沟通比后期的开发还重要,你做的是不是对方想要的,同时最好能跟一手需求方有直接沟通
-
测试,防止测试不完全,以使用人的角度进行思考,以一手需求人的数据进行操作,实现100%的模拟
-
-
与需求方澄清需求
-
确定架构
-
设计文档
-
核心流程、生命状态流转
-
接口设计,与前端确认
-
数据库设计(主键、索引、字段类型大小,必带字段 creatBy、creatTime、modifyBy、modifyTime、deleted)
-
-
开发:
-
本机创建mysql数据库表,确保字段无误
-
根据数据库表创建entity类,包括entity的struct、tableName
-
根据entity,创建dto类,包括dto的struct、dto转entity的方法、Req,对应前端接req——后端dto——entity过程
-
确定前端调用url,写对应router
-
确定接口,写controller接口,确定参数和返回内容
-
生成swagger文档,与前端对接,保证前端可以按照swagger文档开始开发
-
开始controller——app service——service——repo层的实际逻辑开发
-
1.2 命名规范
方法名:
-
PageListXxxx
-
ListXxxx / ListXxxxByXxx
-
AddXxxx
-
DeleteXxxx
-
GetXxxx
-
UpdateXxx
枚举和常量:
-
全局常量和枚举,放在
infra->constant/enums
下面 -
具体域内的常量和枚举放到
domain->constant/enums
下面
1.3 开发技巧
1、会变化的配置,尽量写在配置文件中,防止每次发生变更要重新发版,增加便利性
2、什么时候需要异步处理,批量上传的时候考虑,此时网络会有实现限制
3、对唯一性有要求的参数进行设置时考虑多人操作的情况,是否会导致重复
4、容错处理考虑,参数校验,你永远不知道别人会出现什么骚操作。这就需要在实现基本功能的同时去扩展思考会出现哪些问题
5、不同逻辑代码块之间用空行隔开
6、数据delete字段,不做物理删除,所以相应的查询时也需要带上条件 delete=0
1.4 如何熟练运用合适的API
接口文档API + demo例子
当遇到相关的需求,但是不知道有哪个对应的方法,并且google baidu 搜不到的情况,建议直接查看接口API文档,没准就能找到你不知道但刚好能满足需求的方法,毕竟代码的核心不是重复造轮子,当你觉得繁琐时,就是优化的时机,并且这个时机很大可能别人已经优化了
更多推荐
所有评论(0)