模式的说明模式

定义模式

在这里,我们遵循与《面向模式的软件架构 卷 1:模式系统》一致的模式定义,所以每个模式包含三部分:

  • 背景(Context)问题出现的背景
  • 问题(Problem)该背景下反复出现的问题
  • 解决方案(Solution)经过实践检验的解决之道

模式纲要:

模式
├── 背景
│ └── 引发设计问题的设计情形
├── 问题
│ └── 在特定场景下反复出现的一系列作用力
└── 解决方案 
     └── 平衡这些作用力的配置
        ├── 结构(包含组件和组件之间的关系
        └── 运行阶段行为

架构治理的模式语言

模式语言与具体领域高度相关,并且能对这一类系统提供具体而周全的引导,具体包括以下几项:

  • 要解决的主要问题有哪些?
  • 这些问题应该以什么样的先后次序解决?
  • 解决一个给定问题,有什么可用的替代解决方案?
  • 怎样处理问题之间的依赖性?
  • 在有“周边” 问题存在的情况下,怎样最有效地解决单个问题?

简单来说,模式语言针对于某个特定的问题(如并行编程)所抽象的模式,并包含了他们之间的关系等,能用于系统性地解决这一类问题。

模式的模式:从设计模式到元模式