总结一下近几个月我自己出的BUG
- 一些重复刷新操作,每次都要局部刷新的数据,这时需要判断几个地方。
(1)在不同的时间刷新时,关键依据字段是否已发生变化,旧数据需要删除,新数据需要添加,该保留的数据不可更改。
(2)数据同步问题,也就是说刷新操作的数据依据是否也存在旧数据,如果存在旧数据,也要清除。
(3)在这里,很容易出现空值问题,一旦未做判断,就会导致代码出错。
- 翻页问题
int start= param.pageIndex==1 ? 0 : (param.pageIndex-1)*param.pageSize;
int calcEnd=param.pageIndex==1 ? param.pageSize : param.pageIndex*param.pageSize;
int end= calcEnd > result.count? result.count : calcEnd;
- 在依赖别人的数据结构时,切记自己要与别人核对一下,
如果可以,须查看一下源码,将自己的理解复述给别人听,否则易出现理解误差。这样做可以尽最大可能一次性把事情做对。
- 重复计算的问题
- List排序问题
之前一直不太确定排序逻辑,这次正式总结了一次,相信以后不会再担心这类问题。
- 以前写的主要的逻辑总结,需要实时维护,方便理清思路。
- 最好总结一下整个模块的所有功能
在做一个模块整体改造的时候,经常会漏掉一些功能,这时最好总结一下整个模块的所有功能,写下来,一条一条的过滤,不用花太多时间。
- 在编写代码时,经常有一些逻辑,自己没有调试跟跑哪怕一次,这是极其危险的!再累再费劲,也必须要做测试。
- 看遍这几个月的BUG,发现很多BUG都是因为很多逻辑都没有细化考虑清楚,这个原因导致了各种各样的问题,这是花费时间最多的问题!!!
- 看到这,实在没忍住,吐了。。。