谁在什么地方提供什么功能?
要设计几个类?这些类各个是什么功能?相互间的关系是什么?
创建模式指的是对象那么多,怎么把它"生"出来?生几个?从这个角度上来说数组就是一种另类的创建模式。主要着眼于如何重用已有的代码和设计可重用的代码!
结构模式指的是应该定义多少个对象,多少个类,类和对象间要如何组织。比如说全局变量,我们可以以基本数据类型的形式定义,另一种就是将其按照一定的标准进行分类,定义"结构"。主要着眼与如何扩充代码!
行为模式指业务如何处理,先干什么,再干什么。但这部分内容和结构显然是密切相关的:同样是买房子,找中介和不找中介完全是两个流程。行为模式重点是解决代码中if-else过多的问题。这可能是最复杂的内容。主要着眼于如何减低代码间的耦合和代码结构的复杂性。
5种创建模式,7种结构模式,11种行为模式
设计软件就像写文章,架构是谋篇布局,设计模式是段落(章节)安排,习惯法是遣词造句!
Creational patterns provide object creation mechanisms that increase flexibility and reuse of existing code.
Structural patterns explain how to assemble objects and classes into larger structures, while keeping these structures flexible and efficient.
Behavioral patterns take care of effective communication and the assignment of responsibilities between objects.