代码之家  ›  专栏  ›  技术社区  ›  darpet

工作单元模式的来源是什么?

  •  4
  • darpet  · 技术社区  · 14 年前

    this page 我阅读了以下内容:

    工作单元是Martin Fowler描述的设计模式。

    MartinFowler在Hibernate开发人员之前发现了这个模式吗?他是描述这个模式的唯一来源吗?

    5 回复  |  直到 5 年前
        1
  •  20
  •   Pascal Thivent    14 年前

    马丁福勒在冬眠男孩之前发现了这个模式吗?马丁是描述这个模式的唯一来源吗?

    概念 工作单位 是ORM的核心概念,Scott Ambler在其杰出的ORM研究(可追溯到1998年)中对其进行了描述,尤其是著名的 ORM姐妹论文 (现在分成几个文件):

    据我所知,大多数现代ORM都是基于Scott Ambler的论文,并共享概念:

    • TopLink有一个工作单元, UnitOfWork .
    • JDO有一个工作单元, PersistenceManager .
    • Hibernate有一个工作单元, Session .
    • JPA有一个工作单元, EntityManager .

    因此,虽然这个概念已经成为福勒所描述的一种模式,但安布勒的作品显然早于坡埃亚。

    实际上,TopLink是在90年代初创建的,因此早于Ambler的工作,我只是不知道他们什么时候介绍了他们的工作单元实现,以及Ambler是否以某种方式影响了这一点,或者这是否是由类似想法的融合造成的。

        2
  •  3
  •   D.Shawley    14 年前

    模式不是“发明的”,而是观察和描述的。马丁·福勒只有观察和描述这种模式才值得称赞。

        3
  •  2
  •   S.Lott    14 年前

    你不会“发明”模式。你通过观察事物直到看到重复的特性来发现它们。记录观察到的重复功能。很明显,一些实现必须首先实现。然后有人记录下来。然后其他人阅读并参考文档。

    以前用过它的人现在指的是马丁?

    我怀疑。”“每个人”都是很多以前的用户。其中一些人可能(a)没有提到马丁,(b)很难在谷歌上找到,因为该软件太旧了。

        4
  •  1
  •   Otávio Décio    14 年前

    正如引言所说,这是一种设计模式 描述 在马丁·福勒的著作中,没有任何东西声称是他发明的。但他可能有。

        5
  •  0
  •   Jay    14 年前

    模式并不是被发明出来的;它们作为解决常见问题的经验证的解决方案出现,并被发现和描述,这与生物物种是如何被发现、描述和命名的没有什么不同。当然,在这条线上的某个地方,有人第一次实现了一个原始的工作单元解决方案,但直到其他人也这样做并开始共享它,它才可以被描述为一个模式(任何事物的1都不是一个模式)。

    MartinFowler在描述和命名新兴模式(其中的工作单元)方面非常出色。

    他发表的描述UOW的资料之一是 Patterns of Enterprise Architecture 出版于2002年(毫无疑问,在模式本身已经存在一个 长的 时间)