大牛走了, 进来的人水平差了, 逻辑开始更复杂了。 结构开始混乱起来了,仍然没有文档 没有说明,还能酬和过,
业务要求加剧, 变化多起来。 大牛的初始设计不能满足要求,开始修改 而不是重构。因为没文档 没说明,没人敢改了。
业务变化继续加剧, 人员流动,设计继续变化。 设计者水平进一步参差不齐。 灾难开始出现了,因为系统已经复杂到,用脑子记不下来的情况。 新手看到山一样的代码 不敢随便改。 当年的开发者 不是走了 就是升官。
...
总结了一下,
1 发现文档很重要。
2 设计的灵活 和 前瞻性很重要。 基本就是架构师的水平决定的。 这点 我在网游服务上 感触颇深, 一样的任务系统,不同的设计,有些设计灵活多变,非常精彩。而有些 死板僵硬,到后来会完全无法动弹。而初期可能完全看不出区别,在后来就会越来越有差距。 而僵硬的设计到后来 就越来越难改,到最后是失败。
3 还是靠人。