Template Method模式实现和使用起来都比较简单,但是不是很灵活。
Strategy模式非常灵活但是必须得多创建一个类(接口)、多实例化一个对象(具体算法实现)并把这个额外对象配置到系统中。
因此对于Template Method模式和Strategy模式的选择,要看是需要Strategy模式的灵活性还是需要Template Method模式的简单性。通常我会选择Template Method模式,仅仅因为它更易于实现和使用。
本文探讨了设计模式中的TemplateMethod模式与Strategy模式的特点及适用场景。TemplateMethod模式实现简单但不够灵活;Strategy模式虽然更加灵活,但实现相对复杂。文章分析了两者之间的权衡,并给出了实际应用建议。
Template Method模式实现和使用起来都比较简单,但是不是很灵活。
Strategy模式非常灵活但是必须得多创建一个类(接口)、多实例化一个对象(具体算法实现)并把这个额外对象配置到系统中。
因此对于Template Method模式和Strategy模式的选择,要看是需要Strategy模式的灵活性还是需要Template Method模式的简单性。通常我会选择Template Method模式,仅仅因为它更易于实现和使用。
1280
135

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