J2EE 设计模式和企业应用架构模式的区别

Cur*_*ind 5 design-patterns

我正在努力提高我在软件(工程)的“设计”方面的知识,而且我更喜欢 Java 世界。

我遇到的第一件事是 GoF 书,根据我的理解,它是“核心”或“基础”设计模式(如果我解释错误,请纠正)。

我在尝试深入了解设计(模式)时遇到了以下术语。

1)J2EE design pattern
2)Patterns of Enterprise application architecture
3)GoF patterns

我有点困惑为什么有很多设计模式以及什么时候使用?特别是,#1 和#2 中的模式有什么区别?

任何简单的解释都会有很大帮助。

jac*_*646 5

就像有很多关于编程的书一样,也有很多关于模式的书;所以对“有什么不同”最简单的回答是:这三本书是由不同的作者写的。

  1. J2EE 设计模式,——威廉·克劳福德
  2. 企业应用程序架构模式,——Martin Fowler
  3. Design Patterns: Elements of Reusable Object-Oriented Software,–Erich Gamma 等。

GoF 书 (3) 是第一本将模式概念应用于软件工程的书,因此从这个意义上讲,我认为大多数人都会同意它是后续与模式相关的工作的“基础”。

请注意,架构模式和设计模式是不同的概念,因为架构和设计代表不同的抽象级别(架构是更高的级别)。

任何关于何时应用这些模式的详细解释都需要比 SO 更长的格式(因此上述作者有出版书籍的动机)但是,大多数(如果不是全部)常见模式将在 SO 上有许多单独的线程。

最后,J2EE 模式的一个主要区别是它们是特定于语言的(Java),而另外两本书则与语言无关。