在其他语言中使用时,bean模式名称是什么

时间:2009-12-14 18:55:49

标签: language-agnostic design-patterns

Java具有“bean”的概念,它是一个带有无参数构造函数和getter / setter方法的类。这种模式是否具有更通用的名称,因此,如果我们与从未使用过Java的程序员交谈,我们可以避免使用术语“bean”吗?

4 个答案:

答案 0 :(得分:3)

如果您查看JavaBean definition,更“通用”的名称可能是可重复使用的软件组件(请参阅此tutorial from 1996!),因为它提供了一组明确定义的服务(序列化,访问者,nullary构造函数)
但当然所有组件都不一定是JavaBean。

他们也可以被视为“财产管理员”,因为他们允许发现和访问其属性(通过PropertyDescriptor,以及属性之间的managing constraints。 最后一个方面允许像Scala这样的基于JVM的语言使用scala.reflect.BeanProperty directive将自己的属性调整为JavaBean约定。

答案 1 :(得分:1)

在C中,struct。在VB中,structure

答案 2 :(得分:0)

尽管bean的构造通常被用作结构的替代,但这实际上是一个反模式:与所有OO类一样,大多数bean应该封装行为,而不是一个愚蠢的数据容器。最初,Bean被定位为Windows COM组件的Java等价物,其属性可以由包含框架发现。

答案 3 :(得分:0)

我认为它与对象关系映射有关,该映射也可用于其他语言甚至领域(如 CAD)。