2
我公司拥有一批在斯卡拉无状态的对象,我想起来组合成一个API的 - 一种门面如下:如何通过组合其他对象的API来创建API Facade?
object tools {
// List all methods in toolA
// List all methods in toolB
// List all methods in toolC
}
object ToolA { ... }
object ToolB { ... }
object ToolC { ... }
显然,这是令人讨厌的tools
维持列表,在方法ToolA
,ToolB
和ToolC
正在改变很多。 A/B/C中没有状态,并且没有设置参数。
什么是说... 方式“使tools
包含ToolA
,ToolB
,并且ToolC
集合所有的方法”?
谢谢!这正是我所怀疑的:有一些反复使用“with trait”的语法! Java-ism不起作用,例如使用A,B,C扩展Foo – Hamy 2013-02-16 01:12:20
Scala中特性的扩展功能非常强大。至少应该意识到,特征不限于定义纯粹的抽象类型(没有实现)。实际上,它们可以自由混合抽象(未实现)和具体(已实现)的值和方法。他们最大的限制是缺少构造函数参数。 – 2013-02-16 02:13:27