近两周负责了项目的2个需求开发,整天都很忙(因为涉及到知识盲区),所以最近准备的复习java基础的进度也落了下来。不过这些天感触还是很多,想总结一下 以后能快速的成长。
需求: 其实逻辑并不复杂,就是跟前端交互,我作为后端从数据库中和es中分组查询数据,返回给前端。(但是我之前没有接触过es,所以就感觉任务比较重)
第一阶段
首先就是交接设计文档
五六个人拉了一个腾讯会议,开始通过屏幕交接设计文档(LY在屏幕那端说个不停,但是我是一脸懵逼:好多概念都不知道什么意思,这个需求是干嘛的也不知道),后来看到我的任务是从数据库中查询数据返回给前端(我这时松了口气,还好能看懂我的任务,我就只知道查数据库,给前端就ok了 )。
不过后来又补充,因为数据库存储的类型问题,不能对某些值分组,所以我要从es中分组查询数据。 我只能先记着我要干啥,es是什么回头再了解。
后来又拉了一个会议,开始详细的讨论开发细节(其实在这之前我应该多看看设计文档的,有什么的不懂的就可以问,但是由于没看,就只能干瞪眼听着,也不知道哪里会有看法困难)。
注意:
在开发之前,应该仔细查看设计文档,梳理开发思路和设计文档中有疑问的地方(因为设计文档写的并不是尽善尽美,在后来的开发过程中有很多地方有疑问,这样要找设计人一遍一遍的确认,效率很低,影响开发进度)。 这样在第二次会议中就可以提出疑问,讲出自己的开发思路。
梳理开发思路,确认设计文档 很重要,否则影响开发进度
1. 前端调用的入参(是否必传、参数格式、类型、数据范围……)
2. 返回给前端的参数 (字段名、值的类型)
3. 读取数据源(数据库和es)的数据格式、数据类型、字段名……
4. 最好开发之前能有规范的基础数据样例
第二阶段
开始开发
由于es没有了解过,所以中间几经波折算是把代码写出来了。
但是开发出来后,又给我加了第2个需求,这两个需求比较相似,于是半天开发完成。
开发完成后,自测没什么问题
这里就有很大的问题,没有基础数据可以测试,es和mysql中只是手动添加了几条数据,远远不够
第三阶段
与前端联调
这段是最打击我的,我的代码简直是 bug满满 代码一直修修补补,自己真的需要多积累经验
1. 最多的就是空指针异常(当然也包括文档设计问题,感觉大家开发都没有按着文档来,还有就是我逻辑问题!!!)
2. 与前端传参时间格式不一致,必传字段有异议、参数值不规范
3. 返回参数格式与前端理解不一致
4. 应该严格按照设计文档来开发,如果有异议,应当找设计人员
代码逻辑应当严谨,开发前先沟通好数据传输格式
第四阶段
暂时未开始 ,待续……
测试的兄弟姐妹对不住了,开发联调用了太多时间 。。。
总结
- 开发前要结合开发思路,前后端数据交互格式 认真确认设计文档,防止设计文档有纰漏
- 写代码要严谨!!! 贴合设计文档,如果异议,立刻沟通
- 注意开发进度
- 技术和经验还有待提升,加油
最后如果有哪里总结的不合理的,还请各位大佬指正,谢谢
|