疫情地图开发总结
盲目乐观
在一知半解的情况下,凭感觉去评估难度、工作量和时间,结果很多细节上的问题都没考虑,估算的时间可能只有真实工作量的三分之一(甚至更少,比如这次我预估半天不到就能搞定,结果搞了整整两天,且第一天还是三个人一起搞)。
做事一定要认真仔细,细节决定成败。
平时缺乏主动积累
地图项目我们今年搞了好几期了,但是到目前为止,也没有什么东西积累下来,导致每次有新的需求,都会伤筋动骨搞很久。
脚手架、文档、封装的组件,这些东西都应该主动去积累,甚至更进一步,将当前没用到,但是接下去可能用到的功能预先做调研和实现,这样遇到突发情况才能游刃有余。
技术不端
我们对于常用技术,目前没有深入去琢磨,都是停留在够用就行的程度(很多甚至还没达到够用这个程度,是用到了再临时去查)。这样非常危险,一旦遇到点难题,就会因为不了解原理,无法准确评估可行性和耗时,带来的就是加班加点赶工,而且做出来的结果又不好。
对待技术就像对待学术一样,都要有认真严谨的态度,深入细节和原理,将其琢磨透彻。只有完全掌握,达到精通的程度,才能运用自如,进而达到通过技术创新的程度。
另外我们应该做一些专项练习,类似《刻意练习》这本书里面提到的一样,这是短时间快速解决一类问题的最佳方案。比如移动端兼容性练习、关系图练习、业务开发练习、发布流程练习、可视化叙事性练习、具体某个技术的练习(比如 D3、ECharts)等等。
笨方法
我有时候会用一些笨方法来解决问题,比如这次画特殊地图的边框,用手动调整的方式尝试去解决不同机型的位置兼容性,结果就是大量时间耗费下去了,结果又没调出来一个好的效果。
这根本就是笨蛋采用的方法,和程序化思维背道而驰,真是程序员的耻辱。
慢就是快
我们经常为了急于求成,临时堆砌一些垃圾代码、垃圾逻辑和临时方案来完成功能,结果就是快也没快多少,质量一塌糊涂。
复用、组件化、架构,这些才是提效和提质的关键。把重心放在这些方面,可能想想会慢很多,但是实际上反而会更快。不一定是从长远来看更快,有的时候一个好的设计,在当前这次项目中就会体现出威力。