设计模式--分门别类
强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan设计模式共有23个,包括5个创建型的设计模式,7个结构型的设计模式,11个行为型的,除此之外还有6个原则,这些原则就和裁判一样,例如,简单工厂模式从设计模式大赛中被淘汰就是因为开放-封闭原则先生。记是记不住的,可是我学习完设计模式总不能都是什么都不知道吧...
强烈推荐一个大神的人工智能的教程:http://www.captainai.net/zhanghan
设计模式共有23个,包括5个创建型的设计模式,7个结构型的设计模式,11个行为型的,除此之外还有6个原则,这些原则就和裁判一样,例如,简单工厂模式从设计模式大赛中被淘汰就是因为开放-封闭原则先生。记是记不住的,可是我学习完设计模式总不能都是什么都不知道吧,可是如果从头到尾背一遍还真是有困难的,怎么办呢?那就去百度呗,好了言归正传,这23个设计模式是如何分成这三种类型的,他的目的又是什么呢?
【模式分类】
▶他是按照什么分类的?
设计模式如果不整理,看着就是23个,我们按照设计模式的目的去分类就会发现23个设计模式只是3个大的分支。
▶创建型的用途?
就和我们经常说的人如其名的道理一样,创建型的用途就是创建对象,将创建对象的任务交给另一个对象来完成,在创建型模式中我们用到了工厂,对应的工厂用来生产不同的类。
▶行为型的用途?
算法和对象间的职责分配,不仅描述对象或类的模式,还描述它们之间的通信方式,刻划了运行时难以跟踪的复杂的控制流,它们将你的注意力从控制流转移到对象间的关系上来。
▶结构型的用途?
它主要是用于描述如何将类组合在一起去构成更大的结构。
▶思维导图
【设计原则】
设计原则包括六个,在本文开篇就说到了设计原则就像裁判一样,所以我们经常会在学习设计模式的时候见到“XXX不符合YYY原则”经过改进后就得出我们的设计模式,就符合了YYY原则等等。具体可见《面向对象的设计原则》
【总结】
是9大还是3*3大?你该笑了,当然是一样大了,那现在又有一问,是23大还是3大?当然是23大了,如果没有联系的单单的记忆23个,需要花费的时间精力得是记忆3大分支的多少倍呢?知道了为什么会分为3大分支,理解起来也会比较容易了吧?设计模式虽然能够解决特定的问题,但是在一定程度上会增加代码的复杂性,所以是不可以乱用的,不能够一看到可以用就去大量的用,合理的才是最好的。
更多推荐
所有评论(0)