J2EE设计模式与企业应用程序体系结构模式之间的区别



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

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

当我试图深入了解设计(模式)知识时,我遇到了以下术语。

1)J2EE design pattern
2)CCD_ 2
3)CCD_ 3。

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

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

正如有很多关于编程的书一样,也有很多关于模式的书;因此,对于">有什么区别",最简单的答案是:这三本书是由不同的作者写的。

  1. J2EE设计模式,–William Crawford
  2. 企业应用程序架构模式,Martin Fowler
  3. 设计模式:可重用面向对象软件的元素,Erich Gamma等人

GoF的书(3)是第一个将模式的概念应用于软件工程的书,所以从这个意义上说,我想大多数人都会同意它是后续与模式相关的工作的"基础"。

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

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

最后,J2EE模式的一个关键区别在于,它们是特定于语言(Java)的,而其他两本书是不可知语言的。

最新更新