【1】屏蔽取舍法

屏蔽取舍,即所谓与问题无关的前后“语境”完全可以忽略,首先屏蔽掉,再根据问题复现路径查看问题发生的区间,然后逐近锁定“病灶”,确定需要修改的目标。

【2】追溯原形法

追溯原形,即需要修改的区间已经找到,但是看似没有“病症”,那么怎么办呢?向父类或基类追溯,或许这个问题是历史遗留问题,不过在衍生物表现出了不正常而已。

【3】缩小范围法

缩小范围法,即利用弹提示框的方式找到了问题可能发生的区间,再要往“祖坟上刨一层”,就需要更加的缩小范围。针对于发布版更耐用。

【4】模式设别法

模式识别法,即实在找不到问题,代码也看得云里雾里(维护代码未必都是自己所写)的时候,想想是不是“作者”当初运用了某种设计模式,但运用的不“科学”从而导致了问题的发生。

【5】细节攻克法

细节攻克,即已经把问题锁定到了某个函数,甚至某个语句,这个时候需要专注细节,分析逻辑,调整语句内部的业务处理不合理地方,从而达到对问题的修正。

【6】示例独析法

示例独析,即问题已经明确,但是工程中的上下文语境不便于处理和测试问题,那么就需要单独再做个例子,从而进行模拟和分析问题的症结,然后找到处理问题的突破口。

【7】心想事成法

心想事成,即程序的思想其实很重要的。关键时刻,程序员还是需要思考,深入的用心想想问题应该如何处理更合宜或更有效,达到事半功倍的最佳效果。而不是盲目的下手。

【8】寻人启示法

寻人启示,即每个人都会有思维惯性的时候,当自己实在觉得没法下手,或者不知道该如何处理问题时,要及时的向周围的人寻求指点。

或许,当自己在给别人描述问题症结的时候,自己就会一点一点豁然开朗了(有过这个经历,呵呵~)。

Good Good Study, Day Day Up.

顺序  选择  循环  总结

改Bug总结的更多相关文章

  1. 为什么程序员老在改 Bug,就不能一次改好吗?

    程序员的日常三件事:写Bug.改Bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因为我的眼里常含Bug. 但是真的有这么多Bug要改吗?就不能一次改完吗? 程序员听这问题后要拍键盘了,还!真! ...

  2. 改bug的乐趣

    一直以来,我都不喜欢改bug,不管是自己的,还是别人的.因为我不相信自己的代码会出现问题,一旦出现问题我就会觉得很难堪,因为我觉得我的代码没什么问题.然后我就不知道该怎么来解决这些问题. 最近这一两次 ...

  3. 曹工改bug:cpu狂飙,old gc频繁,线程神秘死亡连环案件调查报告

    曹工改bug:cpu狂飙,old gc频繁,线程神秘死亡连环案件调查报告 前言 前两天,访问开发环境上一个java服务,发现一直转圈圈,因为我开着fiddler,可以看到的现象是,接口一直没返回:本来 ...

  4. 乐动ld06激光雷达sdk改bug记录分享

    前言: 工作中,有使用过乐动ld06款激光雷达,此款雷达将常规雷达的转动的电机部分内置于自己的保护罩内,减少了雷达本身转动积灰等其他外界影响,探测半径是12m,是一款不错的雷达. 不过今天的主要内容不 ...

  5. android软件简约记账app开发day08-时间对话框的书写+改bug,改bug

    android软件简约记账app开发day08-时间对话框的书写+改bug,改bug 绘制对话跨页面 在添加记账信息功能中,我提供了用户添加备注添加事件的功能,设计是点击时间会弹出一个时间对话框供用户 ...

  6. git学习笔记09-bug分支-自己的分支改到一半了-要去改bug怎么办?

    当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交: 并不是你不想提交,而是工作只进行到一半,还没法 ...

  7. 改BUG方法

    ---恢复内容开始--- 今天改了半天参数,后来发现原来是表设置错了,于是决定总结出遇到BUG时的方法,等下次再遇到BUG时,过一遍每个方法就会减少解决BUG的时间,话不多说,写 ①检查表.数据库是否 ...

  8. 11号了,还有三天上线-改bug

    +(NSDictionary *)replacedKeyFromPropertyName { return  @{ @"doctorId": @"id" }; ...

  9. 一次精疲力尽的改bug经历

    一.介绍 最近一直在做有关JavaScriptCore的技术需求,上周发现一个问题,当在JavaScriptCore在垃圾回收时,项目会有一定几率发生崩溃.崩溃发生时调用堆栈如下: 图1 调用堆栈 先 ...

  10. 改bug后 fix bug 时,一个不错的修复描述模板

    *问题原因:* 问题出现的原因.*解决方法:* 问题的解决方案.*影响分支:* 影响哪些分支. *相关修改:* 具体的修改文件列表.*自测结果:* 自行测试了哪些用例,将大概步骤描述出来. *影响功能 ...

随机推荐

  1. raspberry 烧写镜像到SD卡

    刚开始接触树莓派,需要烧写系统镜像到SD卡,网上找了些资料,记录于此. raspberry镜像下载: https://www.raspberrypi.org/downloads/ 烧写工具: wid3 ...

  2. iOS 获取UUID

    -(NSString*)GetUUID { CFUUIDRef puuid = CFUUIDCreate( nil ); CFStringRef uuidString = CFUUIDCreateSt ...

  3. Insert BLOB && CLOB from PL/SQL and JDBC

    For PL/SQL 1)Create Directory Where BLOB resides. create or replace directory temp as '/oradata2'; - ...

  4. Oracle deadlock SX/SSX caused by no index on foreign key.

    Example to show the dead lock caused by lack of index on foreign key of child table. Session 1: crea ...

  5. Android 多线程处理之多线程用法

    handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...

  6. ASP.NET MVC Error

    Error Handler http://prideparrot.com/blog/archive/2012/5/exception_handling_in_asp_net_mvc http://ww ...

  7. GPU 优化总结

    前面说了对我这一年多的工作进行一个总结,由于工作比较紧,加上本人比较懒,一直没能抽出时间来写,最近稍微闲下来了.先写一篇GPU优化的,后续的文章希望能慢慢补齐.这些基本都是我个人优化的实际经验,也参考 ...

  8. rsync+sersync实时同步

    A: 运行rsync daemonB: 运行sersync ,会监控目录,发现改变会更新推送到A上 rsync见上面rsync设置 sersync安装配置1.建立目录mkdir -p /opt/ser ...

  9. max-min fairness 最大最小公平算法

    我们经常面临给一组用户划分稀有资源的问题,他们都享有等价的权利来获取资源,但是其中一些用户实际上只需要比其他用户少的资源.那么我们如何来分配资源呢?一种在实际中广泛使用的分享技术称作“最大最小公平分享 ...

  10. 30个最常用css选择器解析(zz)

    你也许已经掌握了id.class.后台选择器这些基本的css选择器.但这远远不是css的全部.下面向大家系统的解析css中30个最常用的选择器,包括我们最头痛的浏览器兼容性问题.掌握了它们,才能真正领 ...