<script type="text/javascript"> </script>
装饰模式(Decorator):动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。装饰模式是为已有功能动态地添加更多功能的一种方式。
当系统需要新功能的时候,是向就的类中添加新的代码。这些新的代码通常装饰了原有的核心职责或主要行为。如果在主类中添加新的字段、行为和逻辑,将增加类的复杂度;而装饰模式,通过继承主类,把每个要装饰的功能放到单独的子类中。
把装饰功能从主类中移除,有效地把类的核心职责和装饰功能分开,去除了相关类的重复的装饰逻辑,简化了主类。