首先以问题开篇:
“为什么要做设计
---复杂性。业务复杂到个人难以驾驭,仅在脑海里思考不足以应对。
什么方法对付复杂性最有效
---分而治之--模块化
”
程序员拿到一个项目的一般流程,不管三七二十一,先开始写代码再说,一路删删改改,各种大坑,各种方案边写代码边调整,最终项目质量不达标,自己也被折腾得够呛。
这是一个很容易犯的通病,初心是好的,想快点编码推动项目前进。但是结果却是事与愿违。
因为轻视了设计,轻视了质量左移,只能累到死。
你见过哪个大楼前期不是各种规划,各种设计图纸满天飞,各种方案博弈。哪有拿到一块地皮不管三七二十一直接打地基开干的。
软件工程为啥要有设计,就是在前期把项目的结构尽量梳理顺畅,大的难点细化清楚,风险点尽量暴露干净,这样真正开干的时候才有条不紊,心有成竹。
以前看一个项目,只觉得宏伟只觉得自己肯定做不出这么好的项目出来。但是慢慢有了设计思维,就会开始觉得也许一步一步来,一个模块一个模块累积,我们是可以做好一个大项目的。
首先以问题开篇:
“为什么要做设计
---复杂性。业务复杂到个人难以驾驭,仅在脑海里思考不足以应对。
什么方法对付复杂性最有效
---分而治之--模块化
”
程序员拿到一个项目的一般流程,不管三七二十一,先开始写代码再说,一路删删改改,各种大坑,各种方案边写代码边调整,最终项目质量不达标,自己也被折腾得够呛。
这是一个很容易犯的通病,初心是好的,想快点编码推动项目前进。但是结果却是事与愿违。
因为轻视了设计,轻视了质量左移,只能累到死。
你见过哪个大楼前期不是各种规划,各种设计图纸满天飞,各种方案博弈。哪有拿到一块地皮不管三七二十一直接打地基开干的。
软件工程为啥要有设计,就是在前期把项目的结构尽量梳理顺畅,大的难点细化清楚,风险点尽量暴露干净,这样真正开干的时候才有条不紊,心有成竹。
以前看一个项目,只觉得宏伟只觉得自己肯定做不出这么好的项目出来。但是慢慢有了设计思维,就会开始觉得也许一步一步来,一个模块一个模块累积,我们是可以做好一个大项目的。