应用场景:
一个使用command类的sensor类。
现在程序要做扩展,一个sensor类要调用0-*个command类。
不修改代码,做扩展。
具体的方法:
command类派生一个子类。
compositeCommand包含0-*个command,
问题解决。。。。。
注意事项:
1.它能把“一对多”变成“一对一”
2.command必须是类型相似,平等对待的对象。没有层次的划分。
3.图的右半部分是精华。
一个使用command类的sensor类。
现在程序要做扩展,一个sensor类要调用0-*个command类。
不修改代码,做扩展。
具体的方法:
command类派生一个子类。
compositeCommand包含0-*个command,
问题解决。。。。。
注意事项:
1.它能把“一对多”变成“一对一”
2.command必须是类型相似,平等对待的对象。没有层次的划分。
3.图的右半部分是精华。
本文介绍了一种利用Composite Command设计模式解决传感器类扩展问题的方法。通过派生子类并组合多个Command实例,实现了一对多关系的一对一转换,使得在不改动原有代码的基础上能够灵活扩展功能。
185

被折叠的 条评论
为什么被折叠?



