Ruby中8行代码实现Decorator模式

[原文: Decorator Pattern with php?name=Ruby" onclick="tagshow(event)" class="t_tag">Ruby in 8 lines]
[中文名:Ruby中8行代码实现Decorator模式]
[出处: http://www.lukeredpath.co.uk/2006/9/6/decorator-pattern-with-ruby-in-8-lines]
[作者: Luke Redpath ]
[译者: 极地银狐.NET]

装饰模式是设计模式之一,它允许你在运行时动态地为一个存在的对象添加特性.在一个对象有很多种可以有不同方式组合的可以影响其特性的

变量时特别有用(dingsea:没看懂?翻译这段比较YY,以上大概是出版社的风格,其实用例子比较容易理解,向下看)

这个短小精悍的Ruby装饰模式实现,总结了这个星球上我最爱的最火的动态语言.
我从Eric Freeman, Elisabeth Freeman, Kathy Sierra, 和Bert Bates他们写的杰出的Head First Design Patterns 一书中借取一个例子.

假设你要计算一杯咖啡的价钱.你有一个实现了cost()方法的咖啡类.此例中我们出于示例目的硬编码其价格:

[Copy to clipboard] [ - ]