一、初级阶段
管他三七二十一,需求直接开干,程序能跑通能干活就行。
二、中级阶段
拿到需求心里过一遍,80%的架构和接口已经梳理定义完毕,尚有部分细节的没想明白怎么实现,边开发边想,边写边重构,等开发完,架构也定义清晰。
三、高级阶段
拿到需求心里过多遍,架构已定义完毕,架构设计既能满足现在,也能预见到未来需求的变更。接口定义,架构实现,细节打磨,所有的代码都是perfect,多一份嫌胖,少一分嫌瘦。
四、总结
我们可以看到,真正的高手,是能根据软件现有的需求,预测到未来的需求,合理的设计架构,减少代码的耦合性,让程序更健壮,来适应更多的用户场景。我们也必须承认,预测本来就很难,跟下棋一样,普通人只能算两三步,大师可以计算出十多步。只有全面的认识事物发展的客观规律,才能游刃有余的面对未知的风险。
所以,我们对问题的探索既要知其然,也要知其所以然,掌握客观规律就是我们认识世界的一个过程,在认识客观世界中改造主观世界。大道至简,殊途同归!
参考:
https://zhuanlan.zhihu.com/p/32896419