什么是模式化?_模式转换的四个步骤

什么是模式化?_模式转换的四个步骤模式化的过程是把问题抽象化,在忽略到不重要的细节后,发现问题的一般性本质,并找到普遍适用的解决方案的过程

什么是模式化?_模式转换的四个步骤

模式化的过程是把问题抽象化,在忽略到不重要的细节后,发现问题的一般性本质,并找到普遍适用的解决方案的过程。

问题抽象画后应具备的要素(模式的要素):

1 名字(name):一个模式必须有一个有意义的,简短而准确的名字。一个好的名字可以使对模式的抽象讨论变得更容易。有时一个模式有多于一个的名字,这时候,这些名字就应该当做别名列出。

2 问题(Problem):每一个模式必须有一个能够描述它用意的问题,以便能够说明此模式在给定的环境和力中要达到的目标和效果。经常发生的是,力彼此抵消,并且促进或者阻止模式达到它所希望达到的效果。

3 环境或初始环境(Context或Initial Context):模式的问题和模式的解答出现所需要的前提条件。环境说明模式的适用范围,环境也是模式应用之前的起始位形。

4 力(Forces):力给出与模式相关的力和约束,它们怎样彼此相互作用,以及他们对实现目标所起的反作用,比如一个模式为所得到的好处而付出的代价等。要比较好的描述一个模式,就必须完整的给出所有对模式有影响的力。

5 解答(Solution):解答相当于一个生产产品的指令、他可能包括相片、图表、文字,用于确定模式的结构、所涉及的角色以及角色之间的协作,解答要显示出问题是怎样得要解答的等。解答不仅要给出静态的结构,而且要给出动态的行为。其中静态的结构描述此模式的形式和组织,而动态的行为使得模式变成“活”的。模式的解答所描述的正好可以作为实现 模式的指南。

6 举例(Examples):可以使用一个或多个示例性的应用来说明特定的真实环境,以及模式是怎样应用到环境上、改变环境并且给出当模式结束时的末态环境的。例子可有助于读者理解模式的使用方法和适用性。每一个例子均可以附带有一个实现的样本,说明解答时怎样给出的。从熟知的系统里取出来的,有视觉效果的或以比喻方式表达的例子可以更易于使用者理解。

7 末态环境(Resulting Context):模式应用到系统之后的状态或位形。末态环境包括模式带来的好和坏的结果,以及新状态中含有的其他问题和可能涉及的其他有关系的模式。末态环境也就是模式的末态 条件和可能有的副作用。末态环境有时候也叫力的解决,因此它描述 的是什么力得到解决,什么力没得到解决,以及什么模式可以应用到特定系统上。很好的描述末态环境可以帮助比较末态环境与起始环境的区别和联系。每一个模式的每一次应用都是实现一个较大的任务的一小步。

8 推理(Rationale):推理解释本模式的步骤、规则,以及此模式作为一个整体是如何以特定的方式解决模式的力的,解释本模式的力和约束是怎样协同合作的。它可以告诉设计师模式是怎样工作的,为什么可以工作,以及为什么此模式是好的。模式的解答可以描述模式外部的可见的机构和行为,而推理可以给出模式在系统表层以下的深层结构和关键机制的洞察力。

9 其他的有关模式(Related Patterns):这一要素应当描述在现有的系统中这个模式与其他的模式的静态的和动态的关系。相关的模式经常带有相同的一些力。它们的初始环境和末态环境是经常相容的。这些模式可能是本模式的前任模式,也就是说,应用了这些模式可以给出本模式的初始环境;也有可能是本模式的继任模式,也就是说,本模式的应用给出这些模式的初始环境。这些模式还有可能是本模式的替代模式,也就是说,它们在不同的力和约束下,可以给出相同问题的不同解答;也有可能是本模式的相互依赖的模式,可以或必须和本模式同时使用。

10 已知的应用(Known Users):在已经有的系统中模式出现和应用的例子,都可以作为已知的应用。这有助于证明此模式确实是对一个重复发生的问题的可行的解答。已知的应用经常可以成为教学用的教材。

今天的文章什么是模式化?_模式转换的四个步骤分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/68298.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注