架构设计三原则
合适原则
合适原则宣言:合适优于业界领先
失败原因
没那么多积累,却想一步登天,是失败的第二个主要原因
没那么卓越的业务场景,却幻想灵光一闪成为天才,是失败的第三个主要原因
没那么多人,却想干那么多活,是失败的第一个原因
简单原则
简单原则宣言:简单优于复杂
软件领域的复杂性
结构的复杂性
组成复杂系统的组件数量更多
这些组件之间的关系也更加复杂
组件越多,就越有可能其中某个组件出现故障
某个组件改动,会影响关联的所有组件
定位一个复杂系统中的问题更加困难
逻辑复杂性
单个组件承担了太多功能,逻辑复杂几乎会导致软件工程的每个环节都有问题
问题:
代码很庞大,一次clone时间很长
几十上百人维护一套代码,不小心改了一行 代码,导致整站崩溃;需要不停讨论版本计划、协调资源、解决冲突
需求过多导致分支过多,各种分支合并和覆盖,每天上线几十个版本
线上出现故障,需要几十个人一起定位和处理
功能复杂的组件的一个典型特征就是采用了复杂的算法。复杂的算法导致问题难以理解,进而导致难以实现和修改,并难以快速解决问题
演化原则
演化原则宣言:演化优于一步到位
对于软件来说,变化才是主题;本质是:软件架构需要根据业务发展不断变化
设计过程
首先,设计出来的架构要满足当时的业务需要
其次,架构要不断地在时间应用过程中迭代、保留优秀的设计、修复有缺陷的设计,改正错误的设计,去掉无用的设计,使得架构逐渐完善
第三,当业务发生变化时,架构要扩展、重构、甚至重写;代码也会重写,但有价值的经验、教训、逻辑、设计等却可以在新架构中延续
架构设计三原则
最新推荐文章于 2023-03-10 10:53:34 发布