架构师速成6.5-也谈设计模式 分类: 架构师速成 2015-07-14 19:48 284人阅读 评论(0) 收藏
2015-07-14 19:48
465 查看
回头来回顾之前写的文章,发现初中阶段的内容缺了一块很重要的内容就是设计模式。设计模式是程序员的另一个G点,无论吹牛,还是面试,还是设计都会秀一下设计模式,这也奠定了设计模式不可动摇的地位。
我主要讲一下设计模式如何学习,哪些虚的我就不讲了。
找2本书就可以了,大话设计模式和head first设计模式
速读2遍,对设计模式有总体的概念
整理思维导图,先把印象最深的5个列下来,用你的语言通俗易懂的给别人讲清楚,另外需要重点侧重于什么场景下使用。
举个例子,代理模式,怎么跟人讲呢,http://yangguangfu.iteye.com/blog/815787 看看这篇文章,很黄很暴力
当然你还要侧重一下怎样用,在需要用比较通用和复杂的对象指针代替简单的指针的时候,使用 Proxy模式。下面是一些可以使用Proxy模式常见情况:
远程代理(Remote Proxy)为一个位于不同的地址空间的对象提供一个本地的代理对象。这个不同的地址空间可以是在同一台主机中,也可是在另一台主机中,远程代理又叫做大使(Ambassador)
虚拟代理(Virtual Proxy)根据需要创建开销很大的对象。如果需要创建一个资源消耗较大的对象,先创建一个消耗相对较小的对象来表示,真实对象只在需要时才会被真正创建。
保护代理(Protection Proxy)控制对原始对象的访问。保护代理用于对象应该有不同的访问权限的时候。 智能指引(Smart Reference)取代了简单的指针,它在访问对象时执行一些附加操作。
Copy-on-Write代理:它是虚拟代理的一种,把复制(克隆)操作延迟到只有在客户端真正需要时才执行。一般来说,对象的深克隆是一个开销较大的操作,Copy-on-Write代理可以让这个操作延迟,只有对象被用到的时候才被克隆。
直到你讲的一个不懂开发的人也很清楚的时候,开始整理下5个。
整理完所有的之后,理清所有的模式之间的联系和区别,例如
适配器Adapter 为它所适配的对象提供了一个不同的接口。相反,代理提供了与它的实体相同的接口。然而,用于访问保护的代理可能会拒绝执行实体会执行的操作,因此,它的接口实际上可能只是实体接口的一个子集。
装饰器模式Decorator:尽管Decorator的实现部分与代理相似,但Decorator的目的不一样。Decorator为对象添加一个或多个功能,而代理则控制对对象的访问。
整理到1个思维导图上,做到只要看到这份思维导图,你就能讲出所有。
试着重新画这副思维导图,多画几次,直到你很容易的就能画出。
尝试用代码描述你日常见到的所有可以使用设计模式的地方,每天做1个例子。
ok 不出半个月你已经是设计模式高手了。请让我膜拜一下奥!
我主要讲一下设计模式如何学习,哪些虚的我就不讲了。
找2本书就可以了,大话设计模式和head first设计模式
速读2遍,对设计模式有总体的概念
整理思维导图,先把印象最深的5个列下来,用你的语言通俗易懂的给别人讲清楚,另外需要重点侧重于什么场景下使用。
举个例子,代理模式,怎么跟人讲呢,http://yangguangfu.iteye.com/blog/815787 看看这篇文章,很黄很暴力
当然你还要侧重一下怎样用,在需要用比较通用和复杂的对象指针代替简单的指针的时候,使用 Proxy模式。下面是一些可以使用Proxy模式常见情况:
远程代理(Remote Proxy)为一个位于不同的地址空间的对象提供一个本地的代理对象。这个不同的地址空间可以是在同一台主机中,也可是在另一台主机中,远程代理又叫做大使(Ambassador)
虚拟代理(Virtual Proxy)根据需要创建开销很大的对象。如果需要创建一个资源消耗较大的对象,先创建一个消耗相对较小的对象来表示,真实对象只在需要时才会被真正创建。
保护代理(Protection Proxy)控制对原始对象的访问。保护代理用于对象应该有不同的访问权限的时候。 智能指引(Smart Reference)取代了简单的指针,它在访问对象时执行一些附加操作。
Copy-on-Write代理:它是虚拟代理的一种,把复制(克隆)操作延迟到只有在客户端真正需要时才执行。一般来说,对象的深克隆是一个开销较大的操作,Copy-on-Write代理可以让这个操作延迟,只有对象被用到的时候才被克隆。
直到你讲的一个不懂开发的人也很清楚的时候,开始整理下5个。
整理完所有的之后,理清所有的模式之间的联系和区别,例如
适配器Adapter 为它所适配的对象提供了一个不同的接口。相反,代理提供了与它的实体相同的接口。然而,用于访问保护的代理可能会拒绝执行实体会执行的操作,因此,它的接口实际上可能只是实体接口的一个子集。
装饰器模式Decorator:尽管Decorator的实现部分与代理相似,但Decorator的目的不一样。Decorator为对象添加一个或多个功能,而代理则控制对对象的访问。
整理到1个思维导图上,做到只要看到这份思维导图,你就能讲出所有。
试着重新画这副思维导图,多画几次,直到你很容易的就能画出。
尝试用代码描述你日常见到的所有可以使用设计模式的地方,每天做1个例子。
ok 不出半个月你已经是设计模式高手了。请让我膜拜一下奥!
相关文章推荐
- 「深入 Exchange 2013」12 传输架构Part2
- php或js判断网站访问者来自手机或者pc端源码
- EntityFramework 5.0 CodeFirst 教程02-删除和修改/架构改变异常的处理
- Android项目-几种常见的应用架构
- 给你的个人网站领养只萌萌的小仓鼠
- 一步步构建大型网站架构
- 大型网站技术架构-知识点
- 12 个免费在线的 Web 网站性能测试工具
- 建站宝盒-30分钟以内建一个三站合一的企业网站
- 系统架构优化思路
- 一个 非常好的网站
- 高并发网站怎么搭建?数据库分表?
- 我的架构师梦想日记(重开)
- InitPHP框架搭建高可用WEB应用01
- 大话设计模式(十一 三层架构,分层开发)
- 让x86的android模拟器能模拟arm架构系统
- 技术社交以及技术人员互助网站
- 海量图片存储与运算架构
- LVS+Keepalived 网站服务群集
- LVS+Keepalived 网站服务群集