总结一下自己观察到的工作学习的方法和策略:
1、初学者遇到调试问题,需要思考三个问题。What、Why、How?
问题是什么?什么软硬件环境、需满足什么调件?
为什么?原理是什么、东西是怎么工作起来的?数据是怎么流动的?数据是被怎样控制的?这个模块具有的属性是什么?有什么资源可以调用?这东西存在的实质是什么?被这样设计的初衷是什么?结合历史发展过程是什么?
怎么解决?分析解决问题。配合的关联是什么?遵循什么样的协议和规范。如何完成所需要的功能。如何修改?
2、修正价值观。
你需要有兴趣。
你需要愿意去钻研。你需要提前去熟悉你要调试的板卡和功能。
需要建立足够的必要概念,并完成由点到面的跳变。每遇到一个问题积累一些知识点,积累、积累、再积累所有点会一下跳到面的程度,一定会有那个时刻变成一个面。
调试速度取决于经验。积累足够的经验后,调什么都会快。
3、理清框架。
先看文档、论文等资料。阅读文献、网上资料、书籍。先弄懂原理和框架。记住一些点和关键字,让自己以后需要这方面知识时能迅速找到并用起来。站在巨人的肩膀上。
4、去看代码。最终目的是在代码中去理解原理。
5、学习身边的同事。
一个问题,一天内没有思路,三天内没有进展一定要和其他同事讨论。绝不能一个人闷着闭门造车超过三天。遇到困难一定要和懂得的人和比你水平高的人请教。
苍蝇模式和蜜蜂模式都需要使用。积累原理用蜜蜂模式,调试具体代码时定位到最细节处思路无法推进时采用苍蝇模式。
别人能做到的你肯定也能做到,只是投入多少时间和精力的问题。
6、需要去除依赖。
不要总是参考别人的一些东西,自己去思考遇到这个东西,应该怎么分析,怎么去完成。即使尝试了很多方法还是不行,但是这个过程会很有用,经过这个过程,别人提示你一下你往往就知道该怎么修改了。
开始践行吧!