总想闲暇下来的时候写点什么,总结一下工作,总结一下自己,应该是有很多可以总结的。
当一个程序猿遇到问题应该怎么办?
程序猿应该是经常与问题为伴的,一个优秀的程序猿应该是在解决问题中成长和成熟的。
解决方案:
1: 遇到问题的时候,首先不能着急,应该做的第一件事是去翻日志!日志总不会骗人,不管你自己打印的日志还是其他组件打印出来的日志,日志应该是第一时间去掌握的信息,多数的问题从日志中就应该能找到问题的根本所在。
2:当从日志查不出来什么的时候或者日志也没有的时候,此类问题一般就算是比较棘手的问题了。这个时候,我们应该思考一下是不是可以通过其他手段(工具)掌握一些信息,诸如:抓个包?(一般来说,做服务端开发的抓包就能解决多数问题!),想办法复现问题,增加打印!(客户端开发的场景复现很重要) 我这里也不能列举出来所有的工具和手段,这种问题应该是不同问题不同的手法去搞定。
3:当你上面两种方案都不好使的时候,也就是说,找不到关键日志,也没有什么很好的工具和手段去复现找到问题原因,这个时候就是一般来说都需要凭借经验来做事了。我猜这也是为什么工作比较久的程序猿比新手菜鸟贵的地方了。一般这个时候我的经验是,首先去屡一下思路,从头到位去模拟一边问题,然后一步步去增加打印,想办法去定位出问题的点。反正,这个时候你一定要坚信,你一定是能搞定的!解决问题的时候一定要有一股必胜的信念!
4:还有一种情况,当一个问题没有丝毫头绪的时候,可以按照经验,和可能分之去依次尝试,依然都没有找出来问题所在。还是要保持冷静的头脑,然后可以尝试写写demo,将怀疑有问题的部分抽离出来,逐步尝试,不过这样的代价和时间效率都比较底下,一般不推荐。(到了这不田地,一般来说有可能不是自身代码的问题,一定要去查一下第三方的代码,楼主遇到过的此类问题有友盟的SDK,有高德的SDK都被坑出翔过。)
5:如果上面三种方案都没有搞定的时候,我觉得我只会做一件事了,找大哥,有问题一定要及时反馈。这点对于一个开发来说,是很重要的。
面对工作,程序猿应该有怎么样的心态?
1:能不加班就不要加班,白天能搞定的一定不要拖到半夜。
2:独立解决问题,不要遇到问题就哇哇大叫,真心讨厌这样的家伙。
3:在解决问题中成长,勇敢去担当。我始终坚信,做事就一定会有收货。
4:对于技术,要有一点点热忱。心之所系,必有有成长。
面对跳槽,离职的时候,应该怎么看,怎么做?
楼主正在经历这样的环境,身边的人离开的挺多的。做好眼前事,告诫自己,仅此而已~