您的位置:首页 > 其它

总结近两个月出的BUG

2016-04-29 16:09 267 查看
总结一下近几个月我自己出的BUG

一些重复刷新操作,每次都要局部刷新的数据,这时需要判断几个地方。

(1)在不同的时间刷新时,关键依据字段是否已发生变化,旧数据需要删除,新数据需要添加,该保留的数据不可更改。

(2)数据同步问题,也就是说刷新操作的数据依据是否也存在旧数据,如果存在旧数据,也要清除。

(3)在这里,很容易出现空值问题,一旦未做判断,就会导致代码出错。

翻页问题

在做翻页算法时,第一页pageIndex为1,pageSize为5,实际行号为:0到4,5到9,在写页码处理时,需要将起始行号和截止行号计算出来。

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都是因为很多逻辑都没有细化考虑清楚,这个原因导致了各种各样的问题,这是花费时间最多的问题!!!
看到这,实在没忍住,吐了。。。 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: