16. 与设计模式相处
来源:互联网 发布:阿里云域名优惠码口令 编辑:程序博客网 时间:2024/05/17 03:16
1. 设计模式的特点:
设计模式简单来讲,就是在某种情景下,针对某种问题的的解决方法。
设计模式不是创建出来的,而是被发现的。这就需要从各种应用中进行归纳总结,抽象出来。
设计模式不能滥用,最先考虑到的应该是设计的简单性,如果添加设计模式能够提高设计的弹性,那么再去考虑使用他们。
在使用设计模式时,不仅要考虑他有利的一面,也要考虑他不利的一面,要进行权衡。
2. 设计模式的分类:
分类的方式有很多,下面列出两种常用的分类。分类的好处在于缩小搜索范围。
(1)创建型、结构型、行为型
(2)类、对象
3. 其他设计模式:
桥接模式:实现和抽象放在不同的类层次中,使他们独立改变。
创造者模式:builder封装对象的构造过程,可以创建不同对象,在从中获取对象。
责任链模式:一个对象承担一个责任,将这一个个对象串起来,当有请求时,则利用这个链对象检查并处理请求,或是传个下一个对象。没有对象能处理这个请求时,则会传递到链的尾端。
蝇量模式:一个类的一个实例能够能表示许多虚拟实例。但这些虚拟实例没有独立的行为。
解释器模式:不同的语法规则表示成一个类。
中介者模式:当多个对象之间具有复杂的关系时,中介者可以作为沟通和控制方式。中介者使对象间彻底解耦。对象会将自己状态变化告诉中介者,也会响应中介者的请求。
备忘录模式:备忘录存储关键对象的重要状态,维护关键对象的封装。收集状态+恢复状态。
原型模式:创建给定类的实例复杂时使用。clone克隆对象。
访问者模式:访问者通过客户的引导,收集组合中所有对象的状态。组合的所有对象要添加getstate方法。
---------------------------------------------------------------------------
后记:
head first对初级阶段学习设计模式很有帮助,书中对常用的14个设计模式进行了详细讲解,每个模式都列举了一些例子,并且通俗易懂,也很初级,因为没有涉及到很多多个模式一起使用的介绍。剩下的不是很常用的9个模式则放在最后一章进行了简要介绍,这样可以对23个设计模式有个整体的认识。在这个基础上,在去看gof的设计模式就相对容易很多。本书大概断断续续看了两个月(至2017.08.27),最近利用十一放假将之前写的内容整理了一下。
阅读全文
0 0
- 16. 与设计模式相处
- [学习笔记]设计模式[b]-{与设计模式相处}
- 夫妻相处最佳模式
- 学会与高手相处
- 怎样与人相处
- 学会与高手相处
- 学会与高手相处
- 谈谈与人相处
- 怎样与人相处
- 如何与客户相处
- 如何与客户相处
- 如何与人相处
- 人与人相处
- 如何与领导相处
- 与上司相处之道
- 学会与老板和谐相处
- 与人相处 24法则
- 与上司相处的关键词
- EasyRTMP手机直播推流到EasyDSS进行RTMP直播过程中分辨率反复切换崩溃问题解决
- MySQL开发人员对缓存(Query Cache)下了一道处决令
- 同样25岁,为什么有的人事业小成,有的人却还一无所有?
- 解决Eclipse报错显示Unable to build: the file dx.jar was not loaded from the SDK folder
- 替换空格
- 16. 与设计模式相处
- POJ 2632--Crashing Robots
- [bzoj1217][贪心]消防局的设立
- 使用 ProxySQL 提高 MySQL SSL 的连接性能
- Android访问硬件的方法
- 【LeetCode】C# 5. Longest Palindromic Substring
- 蓝桥杯 算法提高 插入排序
- 创建套接字
- 英格尔斯论现代人