1.步骤法(整体与部分,具体问题具体分析)
一般程序都是由多个步骤组成的,每个步骤相互独立又彼此有关联。如果程序有问题,那么可以将程序分成多个步骤进行检测,找出哪些步骤有问题。也可以分为多个函数进行排查,看看问题出在哪些函数,再到某一行,逐步缩小范围。
对于单个应用,gdb调试就是此方法的具体实现。如果是微服务涉及众多应用,那么就以应用为单位进行排除,看看在哪个应用出了问题.
2.对比法(控制变量法)
如果代码改动前没有问题,改动后出现了问题,那么对应的问题几乎就是是和改动的代码有关。这个时候我们就可以用git或者meld等工具对比一下改动前后的代码,从而找出问题。
3.逻辑推理,正逆向思考
如果程序出现问题,我们可以用推理的方法来分析可能导致问题的原因,然后逐个尝试。或者采用逆向思考的方式去找出可能导致问题的原因。这种方法和你个人的经验和基础有关。
怎样解决程序上的问题
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- [查看原文] https://fyh.me/2018/07/12/nginx-docker-miniprogram...
- 搭建hyperledger-fabric环境 一、准备工作 安装虚拟机virtualBox-导入ubuntu。导入...
- 这是一篇关于虚度青春的短篇回忆录。 多年来,我一直在学习编程语言,然后用它们来构建更好的投资工具。在建立预测和风险...
- 一、背景 安装redash的时候,会依赖到 ibm-db这个包,本身这个包只有 642kb大小,但是安装确及其...