有些人常常使用设计模式(Design Pattern)一词来指所有直接处理软件的架构、设计、程序实现的任何种类的模式。另外一些人则强调要划分三种不同层次的模式:架构模式(Architectural Pattern)、设计模式(Design Pattern)、成例(Idiom)。成例有时称为代码模式(Coding Pattern)。
Architectural Pattern :
一个架构模式描述软件系统里的基本的结构组织或纲要。架构模式提供一些事先定义好的子系统,指定它们的责任,并给出把它们组织在一起的法则和指南。
一个架构模式常常可以分解成很多个设计模式的联合使用。
Design Pattern :
一个设计模式提供一种提炼子系统或软件系统中的组件或者它们之间的关系的纲要设计。
设计模式描述普遍存在的在相互通信的组件中重复出现的结构,这种结构解决在一定的背景中的具有一般性的设计问题。
Coding Pattern(Idiom) :
代码模式(或成例)是较低层次的模式,并与编程语言密切相关。代码模式描述怎样利用一个特定的编程语言的特点来实现一个组件的某些特定的方面或关系。
这三者之间的区别在于三种不同的模式存在于它们各自的抽象层次和具体层次上。
Architectural Pattern :
一个架构模式描述软件系统里的基本的结构组织或纲要。架构模式提供一些事先定义好的子系统,指定它们的责任,并给出把它们组织在一起的法则和指南。
一个架构模式常常可以分解成很多个设计模式的联合使用。
Design Pattern :
一个设计模式提供一种提炼子系统或软件系统中的组件或者它们之间的关系的纲要设计。
设计模式描述普遍存在的在相互通信的组件中重复出现的结构,这种结构解决在一定的背景中的具有一般性的设计问题。
Coding Pattern(Idiom) :
代码模式(或成例)是较低层次的模式,并与编程语言密切相关。代码模式描述怎样利用一个特定的编程语言的特点来实现一个组件的某些特定的方面或关系。
这三者之间的区别在于三种不同的模式存在于它们各自的抽象层次和具体层次上。