面对bug和困难的心态
遇到bug了?
作为程序员,会面对各种各样的bug,我们在编写代码的时候,也是生产bug的过程。在公司总会遇到老同事留下的代码,这些代码出现问题了该怎么办?最常见的想法就是,
老同事怎么考虑这么不周到,这些场景都没有考虑到。
我X!这块业务逻辑我都不知道什么鬼,怎么改?
看了代码,根本看不懂,老同事写的代码看不懂!连注释都没有(所以写代码的时候,要想着,接手我们代码的人,是知道我们住址和联系方式的,甚至知道我们常走的路)
。。。。。。。。
面对问题:
该抱怨就抱怨吧,反正问题还在,并不会因为你抱怨而减少。所以抱怨是解决不了问题的。虽然大家都知道,但难免还是会抱怨。
然后就让我们解决问题吧,首先,要确认一点:我们能拿工资的原因就是我们能解决问题。相信问题是会解决的。(它不死,我死!)
既然要面对问题,面对一堆代码(没有注释,有魔法数字,一些特殊数字,根本不知道它代表什么意义),
遇到的问题有很多种,我遇到的问题是:能重现的问题和不能重现的问题(由于并发,网络等原因导致)
能得重现问题:
第一步:重现问题,查看报错日志。
良好的报错日志,能让我们快速地定位和解决问题。通过日志能定位到出现错误的代码区。
如果没有报错,业务表现的错误怎么办?往下走!
第二步:找到对应接口,通过对应接口找到相应的数据库表。
业务比较复杂,但涉及的表一般不会太多。(当然如果业务过于复杂就不一样了。)找到问题数据,看到数据,整理数据关系,逐步回溯到业务代码。
第三步:看看数据有没有问题。
第四步:模拟数据,“走通”代码逻辑。最后你会发现,解决这个问题需要做的东西并不多。反而找问题的时间还比较长。
结语:
遇到问题,虽然有各种负面心态,我们应该尽量减少。面对问题,我们能体现价值的地方就是解决问题。解决问题是我们存在的价值。我们平时学习技术不就是为了更快地解决问题吗?问题解决了,轻松感和成就感。你会发现这是值得的。
面对bug和困难的心态的更多相关文章
- 说说分析bug的一些心得
bug已经成为程序员工作中的一部分,作为从事嵌入式软件开发已有三年的我,经手的bug也不少了.先说说自己对于bug的心态变化吧,刚开始工作的时候,自己还是很喜欢bug的.那时,自己是负责维护别人的代码 ...
- 一个历时五天的 Bug
一个程序员在没有成长成为架构师之前,几乎都要跟 Bug为伴,程序员有很多时间都是花在了查找各种 Bug上. 我印象深刻的一个Bug, 是一个服务器网络框架无锁队列的 Bug .那个 Bug 连续查找了 ...
- 程序员遇到Bug时的25个反应
开发应用程序是一个非常有压力的工作.没有人是完美的,因此在这个行业中,代码中出现bug是相当普遍的现象.面对bug,一些程序员会生气,会沮丧,会心烦意乱,甚至会灰心丧气,而另一些程序员会依然保持冷静沉 ...
- 程序员遇到Bug时的30个反应
开发应用程序是一个非常有压力的工作.没有人是完美的,因此在这个行业中,代码中出现bug是相当普遍的现象.面对bug,一些程序员会生气,会沮丧,会心烦意乱,甚至会灰心丧气,而另一些程序员会依然保持冷静沉 ...
- 遇到bug我会怎么做
我今天遇到一个问题,ztree显示数据,本来这个功能是没有问题的,但是当我新加入了几个页面筛选条件时,将集合传入ztree ,页面缺一直没显示出来,弄了两个小时,代码我都仔细排查了一次,发现没有问题, ...
- 实战小项目BUG纪录
果然,作为程序员最可爱的女朋友就是各种BUG,解决了你的开发能力和开发效率就会上升到一个新的层次.反之,在你面对BUG的时候,如果轻易的就放弃了,你也就失去了一次自我成长的机会.学习就是这样的,我们有 ...
- 程序员奇谈之我写的程序不可能有bug篇
程序员在普通人的印象里是一份严(ku)谨(bi)的职业,也是一个被搞怪吐槽乐此不疲的职业,程序员们面对复杂的代码敲打电脑时连眉头都不会皱一下,但是有一个词却是他们痛苦的根源,它就是Bug. 有不少的新 ...
- bug管理工具为开发者工作带来哪些改变?
BUG管理工具的主要功能是对软件开发测试过程中出现的BUG进行跟踪管理,提高开发者的工作效率与工作质量. 在实际工作中,如果没有bug管理工具的帮助,就可能会出现如下一系列的影响: 1.软件测试人员将 ...
- 谈初学Java历程
学习Java一个月左右,本来很早就想好好静下心来写一点东西了.但由于不想手写,文档写了不知道放在哪好,所以一直拖着.最近注册了博客园,还是挺方便的. 即将大学毕业了,则面临了所以大学生所面临的问题,就 ...
随机推荐
- iOS 10对隐私权限的管理(必须要改否则会crash)
比如访问的摄像头.麦克风等硬件,都需要提前请求应用权限.允许后才可以使用,或者现在要提前声明,虽然以往要求不严格.比如在iOS10中访问通讯录时,强制必须在Info.plist中加入NSContact ...
- [AlwaysOn Availability Groups]使用Powershell监控AlwayOn健康
使用Powershell监控AlwayOn健康 1.基本命令概述 AlwayOn Dashboard是很有用的查看整体AG健康状况的工具.但是这个工具不是用于7*24监控的.如果应用程序夜间发送严重的 ...
- 如何评价一个RPC框架的性能
协议:数据传输的格式,通信双方的契约. 传输:使用何种传输通道传输数据. 线程:接收到数据,如何分发数据进行处理.
- 按照TYPE的文件导入导出功能
/** * 导入文件Action;*/private File excelFile;// 保存原始文件名private String excelFileFileName;// 保存原始文件名priva ...
- 域普通用户执行金蝶K/3权限不够解决方法
一.问题 公司财务部的机器加入域后,用户一直授予本地管理员的权限,主管坚持要撤销管理员权限,而金蝶K3没管理员权限又无法执行. 报错信息为“注册表许可权不够,请参考安装目录的帮助档案进行许可权的配置. ...
- 用ORM的思想操作XML文档,一个对象就搞定不要太简单。滚蛋吧!XmlDocument、XmlNode、Xml***……
大家有没有这样的感受,一涉及XML文档操作就得百度一遍.是不是非!常!烦!.各种类型,各种方法,更别提为了找到一个节点多费劲.本来想写个XML操作的工具方法,写了两行一想既然XML文档是有规律的,如果 ...
- [bzoj3224][tyvj1728][普通平衡树] (pb_ds库自带红黑树)
Description 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相 ...
- [python]设计模式
需要说明:java跟python在思维模式上并不一样,java利用接口以及多态可以实现很多抽象上的东西,而python不行,其实以下很多设计模式写法并不适用也没有必要,更多是为了对比和帮助理解这些设计 ...
- json文件
json为什么会火 参考链接 http://www.jb51.net/article/32830.htm
- ACM/ICPC2016 青岛区域赛
A(hdu5982).(模拟) 题意:输入n对数,将每对数相乘并相加 分析:模拟 B(hdu5983).(模拟) 题意:给你一个二阶魔方,问能否通过一次旋转使得给定魔方的每个面颜色相同 分析:模拟 C ...