Trouble Shooting的一些感想(实时补充)
最近一直做两个产品功能的Merge工作,代码Merge过来之后,发现了很多问题。经过Trouble Shooting,最终发现归根结底都是我们Merge的问题,例如有的Code没有Merge过来,Merge过来没有经过“本地化”修改(例如注册表地址没有修改,在本产品中取不到值)等。在此期间,锻炼了自己Trouble Shooting的能力,也有了一些小感想:
1. Debug Log很重要,要仔细认真的去看,查找原因
这是发现Bug最直接的线索,由于Log文件一般都较大,以前自己看到这些都会头痛,没有做到认真研读。但我发现,遇到问题请教同事时,他们很重视Log,几乎做到了逐字逐句去查找原因,不放过任何一个线索(向前辈看齐)。Debug Log一定要重视,遇到问题要仔细去看,就一定会找到线索。
2. Code要敢于去看,至少能理解其功能,最好用自己话概况其作用
产品的代码量都很大,尤其自己是新人,接触到的都是别人开发后的代码,而且很多代码的调用层次较深,结构以及为什么这么写你可能不会理解。但不要回避代码,从中可以学到很多知识。要敢于去理解,遇到不理解的地方,及时去查资料,请教同事,会学到很多。
3. Google胜过Baidu,多查英文资料
例如平时遇到的编译错误等,往往在Google上会搜索到更有价值的信息,而且大部分都是英文资料,不要因为英文而退缩,而是要像其他同事一样,认真去研读,做足功能,有耐心才会搞清问题的本质,提出解决方法。
最后,工作的态度很重要,对待工作要本着认真严谨的态度,遇到Trouble,一定要搞清原因,及时总结,找到解决方案,才能在不断的工作中有成长,而不只是外人看热闹,虚度时间。
近期看书时间变少,《Effective C++》要尽快读完,《Code Review》的课程要认真准备,另外平时遇到问题,凡是自己搞清,有收获可以分享的,都会及时记录在博客上:-)
Trouble Shooting的一些感想(实时补充)的更多相关文章
- Linux 常见的trouble shooting故障排错
Linux 常见的trouble shooting故障排错 备份开机所必须运行的程序对一个运维人员来说是非常有必要的.在实际生产环境中,系统和数据基本都是安装在不同的硬盘上面,因为企业最关心的还是数据 ...
- neutron trouble shooting - ip can not ping
neutron创建了一个router后,显示列表如下: [root@controller01 keystone]# neutron router-port-list router +--------- ...
- rsyslog trouble shooting
openstack,swift的log不输出了.trouble shooting过程 , 发现我们的程序 /var/log/swift/proxy.log等总是不输出log. 因为log rsyslo ...
- pydevd 一次trouble shooting
只是一次小的trouble shooting. 關於python的遠程調試功能.但是由於思路混亂.浪費了許多時間,記錄一下整個過程.作爲改進的參考. 问题背景: 我之前一直在ubuntu上用pycha ...
- 【Linux】【Commands】trouble shooting命令详解目录
1. 简介 1.1. 最近看到阿里的运维招聘需要熟练掌握以下的命令,我就针对这几个命令做一下总结,有些命令我觉得别人总结的挺好了,我就不赘述了 1.2. 还有一些其他我觉得用得到的命令的用法会在第三部 ...
- Ubuntu上Docker安装Trouble Shooting
(我的环境是Mint7.1,相当于Ubuntu14.04) 1,首先,根据docker.com上的安装指导来安装docker,这里就不重复了,参考: https://docs.docker.com/i ...
- JSBinding / FAQ & Trouble Shooting
Q: Why javascript file extension is .javascript?A: Because Unity treats .js files as Unity script an ...
- DG - dataguard trouble shooting的相关视图
•V$DATAGUARD_STATS:显示dataguard统计信息 备库 SQL> select * from v$dataguard_stats; NAME VALUE UNIT TIME_ ...
- TROUBLE SHOOTING: FRM-30425
关键字:Oracle Form buider FRM-30425 汇总 错误信息如下: FRM-30425: Summarized database item must reside in a blo ...
随机推荐
- Qt 学习之路 2(1):序
https://www.devbean.net/category/qt-study-road-2/page/10 原来开过QT学习之路1, 很棒, 再翻阅时已经没有了. 所以这次把看过的记录下来 Ho ...
- C# DateTime.Compare时间大小对比
- newCachedThreadPool无上限线程池使用
1. newCachedThreadPool无上限线程池, 动态根据代码添加线程, 如果线程空闲60秒没有被使用,会自动关闭 package ThreadTest; import java.u ...
- Query获取多种input值的方法
1 if($("input[name=item][value='val']").attr('checked')==true) //判断是否已经打勾 name即控件name属性,va ...
- Modbus协议学习笔记
之前也有写过基于 Modbus 通讯协议的控制远程监控程序,但是由于当时时间赶.人手少(软硬件前后台都是在下一人
- (转)Mat, vector<point2f>,Iplimage等等常见类型转换
在mfc c++ 以及opencv 编写程序当中,很多常用的类型转换,现在总结一下.(注意加相应的头文件,这里不罗嗦) 提纲: 1. Mat ---> Iplimage 2. Iplimage ...
- IIS Express 无法启动
IIS Express 无法启动1. \.vs\config\applicationhost.config2. 打开.csproject 中把 <UseIIS> 改成 False ---- ...
- Android文件/文件夹选择器(支持多选操作),已封装为lib库,直接添加依赖即可。
话不多少,先上图一览: 接下来我们开始写个app测试: 1.新建Android工程:FileSelectorTest 2.更改MainActivity: 在里面写四个textview模拟button, ...
- eclipse 快捷键使用日志
Ctrl+Shift+F 格式化代码 Ctrl+Shift+O 快速导入资源包 Ctrl+m 最大化/最小化当前窗口(全屏/还原)
- IP分片 与 TCP分段的区别 !!!!careful========以及udp中一个包大小究竟为多大合适 ==========三次握手四次挥手细节
首先声明:TCP分片应该称为TCP分段 TCP/IP详解--TCP的分段和IP的分片 分组可以发生在运输层和网络层,运输层中的TCP会分段,网络层中的IP会分片.IP层的分片更多的是为运输层的UDP服 ...