当前位置:   article > 正文

一些软件调试的总结_软件的调试与分析

软件的调试与分析

        在《编程珠玑》第五章里面,有句话:“专业的调试人员永远不会忘记,无论系统的行为咋看起来有多么神秘莫测,其背后总有合乎逻辑的解释”。

 这里总结几点排查 技术问题 的思路

1,问题是否必现?  如果是必现的,那么解决问题就成功了90%.    如果不是必现的,努力去尝试复现问题.

2,定位问题的点(思路),  手段可以是

        2.1  分析出错日志(找到不懂的关键词要google);

        2.2  gdb调试core文件;bt 看下栈打印以及core信号;

        2.3  添加打印法,这个方法看起来不那么高大尚,但是确是最简洁有力的一种调试方法。要知道在代码的那个部位打印那个变量,这个很关键。知道正确的打印位置,是对程序员系统熟悉程度以及软件基本功的有力考验。

        2.4  经典的 排除法,例如 注释掉代码,或者 一个模块一个模块卸载;查看问题是否还出现。

        2.5  基线对比法(鲁代码),选择一个不出问题的基线,和出问题的分支线,做改动对比。对比过程中,要有这个信念:90%的问题都是改动引发的 !

        2.6  排除环境问题。开发过程中经常遇到: 我在这里运行可以,但是到哪里却不行了!的问题,从几个方面思考:软件版本一致吗?编译的操作系统内核版本一致吗?配置一致吗?

3,排查问题的风格

        3.1  保持好奇心,以及解决问题的兴趣。

        3.2  没思路要找人要思路,特别是之前开发过该系统的人。

        3.3  及时汇报阶段进展,发在相应群里让大家知道。一是让leader知道,二是促进大家讨论。

4,休闲时间多看书

        有时你会在书中偶然发现,你之前花了几天努力找到的答案,在书中已经有了。你会好奇为什么当时没有注意到书中的这段话。

        Linux四库全书,《APUE》,《CS.APP》,《STL源码剖析》等等金典基础的书籍多看几遍。扎实的技术基础,能给你自由。

        

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/389413
推荐阅读
相关标签
  

闽ICP备14008679号