点击续命|程序员如何有效处理bug?

测试员因bug而生

程序员因bug狗带

在程序员的职业生涯中,免不了要跟bug一直打交道

Bug也是程序员进阶的磨刀石

当然,bug还更大部分程序员的噩梦啊

心疼你们那一撮撮头发

以及本该狂欢的无数个美好夜晚

老九君将有如何有效处理bug的方式分享给大家

一、面对bug的一些态度

先来说一下软件行业的一些公司,他们经常会让一个人修补另一个人代码里的BUG。在这种情况下,一些程序员完全可以一气呵成书写了一段代码,之后就可以把问题抛给其他工程师

但是,这样就会出现另一种尴尬的情况。由于每个人的代码技巧和风格不一样,让一个人修复另一个人的BUG工作效率相当低。另一方面,搞得另一位程序员很没面子!何况对于技术高一点的程序员来说,修改越是糟糕的代码,越痛苦!在他们的看来,倒不如重写代码

其次,一些程序员面对bug也会出现消极的态度:测试人员是不是针对我?我真的适合做程序员吗?这好像不是我的bug!

具备职业修养的程序员,面对bug的正确姿势应该是:调试代码,单元测试,联合调试,集成测试,确认问题所在,进一步找出问题的原因,然后再修改代码,验证修改后的代码

二、如何解决Bug?

1、二分法定位

这也是比较常规的方法,即把程序逻辑一点点注释掉,看看还会不会出问题,类似二分查找的方法,逐步缩小问题范围

2、单步调试

由于代码逻辑错误,经常会出现输出结果与预期不符。解决此类问题最好的方法就是利用单步调试,即设定每一步代码的预期结果,然后跟踪判断实际结果是否与预期结果一致,找到不一致的原因!在开发环境无法重现,无法单步调试的,就可以运用添加输出日志的方式判断哪一步的问题

3、重写一遍

大部分的bug,其实都是 typo。你可以用必杀技,重写一下代码!

而对于兼有管理职责的程序员来说,遇到手下的bug,不用解释,不用推敲,等他们自己把程序改好,或者实在没办法,再来向你解释他们的思想!

原文发布于微信公众号 - 老九学堂(xuetang9)

原文发表时间:2017-11-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java学习网

编程能力七段论

编程能力七段论 前言   程序员的编程技能随着经验的积累,会逐步提高。我认为编程能力可以分为一些层次。   下面通过两个维度展开编程能力层次模型的讨论。   一...

2295

使用Apprenda和R分析应用程序工作负载数据

平台即服务(PaaS)可以利用的最重要的数据类型之一就是它在其权限范围内运行的访客应用程序的内容。PaaS服务应该了解关于访客应用程序的各种各样的事情 - 包括...

1686
来自专栏老九学堂

【秘籍】程序员高薪面试技巧

面试就像高考,分数优异,不一定能进入好大学,面试亦是如此,能力强不一定能进入到自己心仪的公司,因为这个不仅和技术有关,还和自己的综合素质与临场发挥有关。今天老九...

3374
来自专栏ImportSource

REST?RPC?是时候改变你对微服务的认知了!

大部分时候,微服务都是建立在一种基于请求和响应的协议之上。比如,REST等。这种方式是自然的。我们只需要调用另外一个模块就是了,然后等待响应返回,然后继续。这样...

33514
来自专栏架构师之路

框架组件,究竟要不要自研?

一、问题的提出 询问框架组件,是否需要自研? 18年规划系统介绍58到家的技术体系,15年加盟58到家后,架构部正好也是负责范围的一部分,故谈一谈自己的想法,个...

3746
来自专栏云计算

使用Apprenda和R分析应用程序工作负载数据

在权限范围内运行的访客应用程序的知识是平台即服务(PaaS)可以利用的最重要的数据来源之一。一个PaaS应该知道(译注:原文为know,此处应指可以获取并处理)...

1986
来自专栏章鱼的慢慢技术路

七牛2018春季校园招聘后端开发工程师笔试经验

1216
来自专栏CSDN技术头条

好的API都有哪些特点?你能做到几点

好的API是怎样的,应该具备哪些特点,作者对此进行了详细说明,并把API比作产品,主张编写API时从用户的角度换位思考。 如果用户通过他们自己的代码与你的代码进...

1917
来自专栏草根专栏

.NET Core TDD 前传: 编写易于测试的代码 -- 单一职责

例子, 某软件公司, 原有项目开发, 测试, 售前, 售后, 财务等员工. 后来由于公司没钱, 裁掉了测试, 让开发兼职; 过了段时间, 又裁掉了需求和售后, ...

803
来自专栏云计算D1net

混合云实现分层存储架构

通过提供更低的成本,更高的性能并减少数据的丢失,混合云可以帮助一些企业优化其分层存储系统。 分层存储架构并不是什么新鲜事。这已经是多年来常见的一种做法,创建一个...

2556

扫描关注云+社区