的设计模式分类[关闭](Categories of design patterns [closed]

2019-07-31 20:59发布

经典的“设计模式:可重用的面向对象软件元素”实际上引入了我们大多数的设计模式的思想。

然而,这些日子里,我发现了一本书,如(POEA)由Martin Fowler“企业应用架构模式”,远在我的日常工作更加有用。

在与其他开发者的讨论中,许多使(公平)点框架,如.NET正慢慢开始提供许多在GOF书的模式,所以为什么要重新发明轮子?

看来,许多开发商认为,GOF本书是值得拥有设计模式的唯一参考。 因此,他们的逻辑是,由于框架(.NET等)都为我们提供了许多GOF的图案,花纹已经看到他们的一天,不再那么重要。

令人惊讶的(至少对我来说),当我提到在POEA descibed模式,我经常会碰到空洞的眼神。

POEA证明图案不仅仅是Interators,单身,命令等我还要说,在GOF的模式其实只是图案鲜明的“类别”,适用于设计的不同(非重叠)的水平,比在POEA。

因此,图案什么其他“类别”,在你的开发已申请? 做这些模式适用于什么级别的设计? 在开发过程中什么时候他们在正常使用? 是否有这些模式一本书或引用?

Answer 1:

CategoryPatterns沃德的wiki包含的模式的分类列表。

前三个是GoF的模式

  • 创力
  • 结构
  • 行为的

然后有问题的具体问题

  • 安全
  • 并发
  • 即时的

福勒的模式是企业应用模式。 也有企业集成模式 。 UI模式也存在..等等...



Answer 2:

我只是增加一个答案,因为我有这个问题的回答有所不同。 据POSA(在面向模式的软件架构系列图书),有三个层次的模式:

  • 建筑模式( 例如图层,MVC,P2P)
  • 设计模式( 如GoF的模式
  • 习语( 例如语言特定图案像平普尔,RAII在C ++)


Answer 3:

GOF模式也严格只适用于编码。 福勒的模式是不只是代码,但也为如何将数据和系统组件的设置和互连。

此外,如果他们在编程语言已经烤了一些模式是没有必要的。 在某些语言中,他们仅仅是成语。 一个实际上已经作出设计模式是编程语言不足的迹象的说法。



文章来源: Categories of design patterns [closed]