发现自己过于依靠“重现异常”来除错,这样正常吗
发现自己过于依靠“重现错误”来除错,这样正常吗
我也想依靠逻辑分析来找出问题,但有时候实在是分析不出来,总是需要靠错误重现来找出逻辑的错误
今天要不是靠好心的老大帮忙,恐怕我现在还头大着呢(因为那个错误太难重现了)。
请问,是不是一般刚开始都是这样过来的?
------解决方案--------------------
错误不重现,很难定位的,对于那种比较随机的错误,只能用try catch写日志的方式记录然后分析。
对于出现了一次后永远不出现的错误……没辙。
另外,不要依赖自己的眼睛,静态代码分析工具最好都准备好,这也是我推荐VS2008 team system的原因。
必要时,动态fuzz测试的也得用上。
------解决方案--------------------
写的时候注意逻辑模块化,单元测试的时候就比较容易发现bug了
------解决方案--------------------
据说有一位软件工程师,一位硬件工程师和一位项目经理同坐车参加研讨会。不幸在从盘山公路下山时坏在半路上了。于是两位工程师和一位经理就如何修车的问题展开了讨论。
硬件工程师说:“我可以用随身携带的瑞士军刀把车坏的部分拆下来,找出原因,排除故障。”
项目经理说:“根据经营管理学,应该召开会议,根据问题现状写出需求报告,制订计划,编写日程安排,逐步逼近,alpha测试,beta1测试和beta2测试解决问题。”
软件工程师说:“咱们还是应该把车推回山顶再开下来,看看问题是否重复发生。”
------解决方案--------------------
先分析后设计.
没思路可以咨询一下别人,或看书,或上网查资料。
多用笔在草稿纸上画画也不错.
------解决方案--------------------
写的时候注意逻辑,尽量能验证算法正确性。对于不能预知的错误当然也要根据日志来定位分析判断。大的软件都是这样的。
------解决方案--------------------
你应该在锻炼锻炼
我也想依靠逻辑分析来找出问题,但有时候实在是分析不出来,总是需要靠错误重现来找出逻辑的错误
今天要不是靠好心的老大帮忙,恐怕我现在还头大着呢(因为那个错误太难重现了)。
请问,是不是一般刚开始都是这样过来的?
------解决方案--------------------
错误不重现,很难定位的,对于那种比较随机的错误,只能用try catch写日志的方式记录然后分析。
对于出现了一次后永远不出现的错误……没辙。
另外,不要依赖自己的眼睛,静态代码分析工具最好都准备好,这也是我推荐VS2008 team system的原因。
必要时,动态fuzz测试的也得用上。
------解决方案--------------------
写的时候注意逻辑模块化,单元测试的时候就比较容易发现bug了
------解决方案--------------------
据说有一位软件工程师,一位硬件工程师和一位项目经理同坐车参加研讨会。不幸在从盘山公路下山时坏在半路上了。于是两位工程师和一位经理就如何修车的问题展开了讨论。
硬件工程师说:“我可以用随身携带的瑞士军刀把车坏的部分拆下来,找出原因,排除故障。”
项目经理说:“根据经营管理学,应该召开会议,根据问题现状写出需求报告,制订计划,编写日程安排,逐步逼近,alpha测试,beta1测试和beta2测试解决问题。”
软件工程师说:“咱们还是应该把车推回山顶再开下来,看看问题是否重复发生。”
------解决方案--------------------
先分析后设计.
没思路可以咨询一下别人,或看书,或上网查资料。
多用笔在草稿纸上画画也不错.
------解决方案--------------------
写的时候注意逻辑,尽量能验证算法正确性。对于不能预知的错误当然也要根据日志来定位分析判断。大的软件都是这样的。
------解决方案--------------------
你应该在锻炼锻炼