首页 > 代码库 > 设计模式:组合模式

设计模式:组合模式

blog宗旨:用图说话

辅助文字说明:

1.调用形式:在Client中使用component.method();

2.使用范围:具有同样结构的聚合、组合。


举例:

生成条件语句:when avg(cpu) > 60% or avg(mem) > 70% for 3 min then do scale up,对于avg(cpu) > 60% , avg(mem) > 70%,或者其它条件语句,个数是不定的,用and、or连接,由用户自定义。

那么这里运用组合模式:

Part为:avg(cpu)>60%

Component为avg(cpu) > 60% or avg(mem) > 70%

Composit为Component与Part的聚合:如avg(io)>80% and (avg(cpu) > 60% or avg(mem)>70%)

相应的UML图如下:




设计模式:组合模式