一、 分隔核心单元
l Model-View-Controller架构模式
l Presentation-Abstraction-Control架构模式
l Layer架构模式
l Pipes and Filter架构模式
二、 在系统运行时的灵活性
Component Configurator设计模式(构建一个系统配置机制)
三、 自由扩展、变更、自适应
l Intercepter设计模式
l Visitor设计模式
l Strategy设计模式
l Extension Object设计模式
l Decorator设计模式
四、 将系统功能隐藏,分割开Client端对系统功能的直接依赖
l Extension Interface设计模式
l Facade设计模式
l Adapter设计模式
l Mediator设计模式
l Proxy设计模式
Disposal Method设计模式
系统架构质量的五维模型(DESSA):
一、架构和设计模式的密度(Density)
为解决系统并发可使用:Active Object、Proxy、Command、Composite、Memento、Command and Processor、Singleton、Strategy;
为解决系统访问“同步”问题:Active Object、Scoped Locking、Strategized Locking、Thread-safe Interface、Double-checked Locking Optimization
另外,系统架构并不是把这些设计模式作为一个个独立的单元进行堆积,而是按照在系统中扮演角色的需要来使用设计模式。
二、系统架构的匀称性(Symmetry)
三、架构是否实用简洁(Simplicity)
“KISS”原则:Keep It Stupid Simple
四、架构的表达能力(Expressiveness)
五、架构是否考虑了系统自适应能力(Adaption)