2009年5月6日星期三

美丽架构7原则

  1. 一处一事实。一个设计决定,只出现在一个地方。将来当这个设计决定改变时,改动量可以最少。参设计决定、反悔、霰弹式修改和架构污染
  2. 自动传播。有时候出于效率考虑,必须复制一些东西。系统需要保证这些复制很容易自动进行。现在流行的分布式版本控制系统(Git、Hg)就是很好的例子。还记得当初的EJB吗?事实是我们在写分布式应用,然后规范要求我们在几个地方尊重这个事实。EJB3.0改变了这种情况。
  3. 架构也包含构建过程。架构什么都不是,围绕架构的过程就是一切。
  4. 使用最少的机制。够用就好。要明确目标,优化瓶颈,不要沉迷于非瓶颈部分的优化。要事第一
  5. 设计引擎。利用引擎,我们把该放在一个地方的内容放在一个地方。例子有规则引擎、工作流引擎、脚本语言和DSL。但是在项目中自己实现一个引擎要考虑实现的成本和项目的经费。
  6. 支持伸缩。在负载增大的情况下,系统的表现如何?系统是怎样的方式实现伸缩?
  7. 抵制熵增。年轻时很美并不难,难的是一辈子到老都很美。美丽的架构能够经受时间的考验。

没有评论: