Thursday 1 February 2007

重构小试



     
前天接的bug真是一波3折。第一天,很顺利就实现了添加的功能,顺利的有点莫名其妙。然后,发现一个小小的问题,开始修.....之后,发现这个小问题修好了,大毛病又出来,真是郁闷和邪门,以为自己不小心修改什么代码呢;之后,老办法,只好将代码重新拷过来,然后一点一点加载修改的代码。修改以后发现样子依旧,呵呵,设了断点察看,发现属性没有赋成功,最后发现.....2个用来区别的字符串居然被我搞成一样了,狂晕......所以就会出现赋值错误的状况。又一个低级错误啊.....之后,果然成功了。但同时发现2个功能的函数有大量的重复和冗余,于是重构开始,从函数中提出不同的部分,形成了一个参数,函数的接口增加了一个变量,名字修改一下,ok,2个功能可以共用这一个函数了,呵呵。测试一下,功能没有影响。然后,继续探究,发现2个功能用了共同的几个变量,而这几个变量命名方式明显偏向了一个功能。改名开始.......改好了.....发现ace的界面还是有jet的内容......晕......继续修改......诡异问题还在出现,明明rc已经修改好了,但是load的字符串还是没修改的.......继续修改中。

 

     不过还是学到一点东西的.....

1.excel
加了密码以后,其他程序用odbc或oledb都是打不开的。所以,这个应该写到我们的用户手册里面,免的还以为我们的程序无法实现呢~~。

2.重构要小步进行,多测试。


3.把新功能做bug修还是做一个新功能来搞呢?这是一个先有鸡还是先有蛋的问题,似乎重构是一个不错的方法,边重构边增加新功能。

4.遇到难解的问题多到系统里查看前人的做法,他们的讨论会给解决问题带了不小的帮助和惊喜。

5.多和qa同志们学习,他们的思维方式非常有趣,一个好的qa能够很迅速的定位错误,这种思维方式太值得学习了!!!