Scala 有一些特性,它们是正在破解的接口。确实,它们应该是接口,诚然,在构造函数方面存在限制,但考虑到如果你有两个接口都具有构造函数的要求,那么这并不是什么大问题,你会遇到同样的问题。
然后是部分方法,在很多方面,基于依赖管理的许多好的面向对象设计原则几乎可以被视为获得更可组合的工作单元的方法,你真的不得不怀疑。您不仅可以处理方法输入和输出,或者使用策略对象/方法的预定义点,还可以提供更多的灵活性。
再加上伴随的对象,突然之间,工厂和更多的东西变得更加微不足道。
Given that's the case, you really can get away from having to use interfaces everywhere, and with more powerful generics system, some of what gets done with interfaces gets sucked up there.
Generally looking at Scala code it tends to be rather decomposed, and interfaces don't seem to be the main tool in that.