-
概念
-
代码设计经验的总结
-
被反复使用
-
多数人知晓
-
-
面向对象设计中反复出现的问题的解决方案
-
专用于软件开发过程设计的模式
-
模式
-
-
抽象的模版
-
模版和模型的区别?
-
-
-
背景
-
最初是应用于用于建筑领域的思想
-
1987年软件开发模式出世
-
1991年 Design Patterns 问世
-
-
-
原则/特性 SOLID
-
单一职责 SRP
-
开闭原则 OCP
-
里氏替换原则 LSO
-
接口隔离原则 ISP
-
依赖倒置原则DIP
-
迪米特法则(Demeter Principle)
-
合成复用原则(Composite Reuse Principle)
-
组合
-
-
-
作用
-
增强可重用性
-
提高代码的可重用性
-
提高程序的重用性
-
-
增强可靠性
-
增强可读性
-
使代码容易被他人理解
-
-
增强可扩展性
-
高内聚低耦合
-
-
模式格式
-
模式名称(Pattern Name):每一个模式都有自己的名字,模式的名字使得我们可以讨论我们的设计。
-
问题(Problem):在面向对象的系统设计过程中反复出现的特定场合,它导致我们采用某个模式。
-
解决方案(Solution):上述问题的解决方案,其内容给出了设计的各个组成部分,它们之间的关系、职责划分和协作方式。
-
效果(Consequence):采用该模式对软件系统其他部分的影响,比如对系统的扩充性、可移植性的影响。影响也包括负面的影响。
-
别名(Also Known As):一个模式可以有超过一个以上的名称。这些名称应该要在这一节注明。
-
动机(Motivation):该模式应该利用在哪种情况下是本节提供的方案(包括问题与来龙去脉)的责任。
-
应用(Applicability)
-
结构(Structure):这部分常用类图与互动图阐述此模式。
-
参与者(Participants):这部分提供一份本模式用到的类与物件清单,与它们在设计下扮演的角色。
-
合作(Collaboration):描述在此模式下,类与物件间的互动。
-
结果(Consequences):这部分应描述使用本模式後的结果、副作用、与交换(trade-off)
-
实现(Implementaion):这部分应描述实现该模式、该模式的部分方案、实现该模式的可能技术、或者建议实现模式的方法。
-
例程(Sample Code):示范程式。
-
已知应用(Known Uses):业界已知的实做范例。
-
相关模式(Related Patterns):这部分包括其他相关模式,以及与其他类似模式的不同。
-
-
类型
-
MVC
-
创造型
-
抽象工厂
-
工厂方法模式
-
构造器模式
-
-
结构型
-
行为型
-
-
必要元素
-
模式名称
-
待解决的问题
-
解决方案
-
效果
-
结果
-
利弊
-
-