1973得票35回答
更倾向于使用组合而非继承吗?

为什么更倾向于使用组合而不是继承?每种方法都有什么权衡取舍?反过来问:什么情况下应该选择继承而不是组合?

567得票21回答
关联、聚合和组合的区别是什么?

什么是关联、聚合和组合的区别?请从实现方面进行解释。

281得票11回答
编排 vs. 协作

从组织内部角度看,服务编排和服务协作有哪些区别。

249得票17回答
继承和组合的区别

组合和继承是一样的吗? 如果我想实现组合模式,我应该如何在Java中实现?

223得票3回答
React.js:将一个组件包装到另一个组件中

许多模板语言都有“插槽”或“yield”语句,允许对一个模板进行控制反转,以将一个模板包装在另一个模板内。 Angular具有"transclude"选项。 Ruby/Rails有yield语句。如果React.js有yield语句,它会像这样: var Wrapper = React....

116得票9回答
Java中聚合和组合的实现区别

我知道聚合和组合之间的概念差异。有人能告诉我它们在Java中的实现差异并举例说明吗?

110得票10回答
Haskell中的组合(.)与F#中的管道向前运算符(|>)

在F#中,使用管道前进运算符|>是非常常见的。然而,在Haskell中,我只看到过函数组合(.)被使用。我理解它们是相关的,但是在Haskell中为什么不使用管道前进运算符,还是有其他原因吗?

92得票7回答
Java - 接口实现中的方法名冲突

如果我有两个接口,它们的目的非常不同,但是方法签名相同,那么如何使一个类同时实现这两个接口,而不被迫编写为两个接口服务的单个方法,并在方法实现中编写一些复杂的逻辑以检查调用所针对的对象类型并调用正确的代码? 在C#中,可以通过显式接口实现来解决这个问题。在Java中是否有任何等效的方法?

88得票5回答
具体示例说明单子在组合下不是封闭的(附带证明)?

众所周知,应用函子在组合方面是封闭的,但单子不是。然而,我一直在寻找一个具体的反例,表明单子并不总是可以组合。 这个答案给出了[String -> a]作为非单子的例子。经过一番尝试,我相信它的直觉,但那个答案只是说“无法实现join”,没有真正给出任何理由。我想要更正式的东西。当然,...

81得票2回答
Scala中的Mixins与组合

在Java世界中(更准确地说,如果您没有多重继承/混合),经验法则非常简单:“优先使用对象组合而不是类继承”。我想知道如果您考虑了mixins,特别是在Scala中,它是否会发生变化?mixins是否被认为是多重继承的一种方式,还是更多的类组合?是否也有“优先使用对象组合而不是类组合”(或反之...