想要提升技术能力,需要靠不断地努力,和日常的积累。但是,很多同学都会抱怨:每天都在做业务需求,没时间提升技术。的确,大部分人都会遇到这样的问题。
那么,有没有方法能够在做业务需求的同时,也能提升技术呢?
今天,针对这个问题,来为大家分享一些技巧。
1. 学会提出问题
很多同学做需求都是:coding -> 提测 -> 改 bug -> 功能上线,然后这个需求就算做完了,之后就是下一个需求,如此周而复返。
长期这样下来,你会发现自己除了重复劳动就是重复劳动,技术上没有一点进步。
如果是这样的工作方式,面对职级评审的时候,只会让自己流下悔恨的泪水。
如果改变呢?
第一步就是要在完成需求后对自己提出一些问题。比如,你开发了一个用 RecyclerView 展示列表的需求,那么你可以问问自己:
- RecyclerView 的写法有没有提升空间?
- 多种 item 样式如何能够快速支持?可否做成后端控制?
- Adapter 如何封装?
- ......
对自己提出了问题,你才会去思考,然后学习、实践。
这样,才能让自己的技术在深度上有提升。
2. 定期总结
总结绝对是一个百试百灵的招。
对于一个业务需求来说,其实有很多可以总结的点。大致包括以下几个方面:
- 提升空间
- 扩展性
- 通用性
- 方法论沉淀
2.1 提升空间
提升空间是指,在做完一个业务需求后,可以思考一下,当前的业务流程是否存在问题?有没有改进空间?
如果有,是不是可以通过技术手段去解决?
然后就可以向 PM 或者 Leader 提出一些优化建议,然后推动完成。
2.2 扩展性
扩展性是指,如果 PM 要后期需要调整需求或者新加功能,你开发的代码是否可以快速支持。
大家都知道需求不可能一层不变,所以,这就要求我们开发的功能扩展性要好,能够适应多种变化。
2.3 通用性
通用性是指,你开发的功能能否成为通用的组件,如果其他模块或者 APP 想要使用你的功能,能否以最低成本接入,避免重复造轮子。
2.4 方法论沉淀
方法论沉淀是指,开发完本次需求,能否总结出一些有价值的方法论,比如说框架图、流程图等等。
3. 输出
如果你完成了前两步,那么你一定要把它梳理成文章。
输出能帮助自己更好的思考,因为你必须弄清楚每一个细节,你才能写得出来。同时输出还能帮助自己把零散的知识系统化。
4. 积极交流
在日常的工作中,要学会多沟通和交流,多参与讨论,比如日常例会、代码评审,要提出一些自己的看法,不要害怕自己说的会被被人笑话,敢于表达,才能成长。