设计模式
山鸡的春天
IT成长之路
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【深入】java 单例模式
关于单例模式的文章,其实网上早就已经泛滥了。但一个小小的单例,里面却是有着许多的变化。网上的文章大多也是提到了其中的一个或几个点,很少有比较全面且脉络清晰的文章,于是,我便萌生了写这篇文章的念头。企图把这个单例说透,说深入。但愿我不会做的太差。 首先来看一个典型的实现: 1 /** 2 * 基础的单例模式,Lazy模式,非线程安全 3 * 优点:lazy,初次使用时实例化单例,避免资源浪费转载 2017-06-17 15:14:48 · 286 阅读 · 0 评论 -
设计模式 模版方法模式 展现程序员的一天
继续设计模式~ 模版方法模式老套路,先看下定义:定义了一个算法的骨架,而将一些步骤延迟到子类中,模版方法使得子类可以在不改变算法结构的情况下,重新定义算法的步骤。简单看下定义,模版方法定义了一个算法的步骤,并且允许子类为一个或多个步骤提供实现。定义还算清晰,下面来个例子展示下本公司的上班情况(纯属娱乐,如有雷同,请对号入座)。简单描述一下:本公司有程序猿、测试、HR、项目经理等人,下面使用模版方法模转载 2017-06-24 16:54:14 · 270 阅读 · 0 评论 -
设计模式 外观模式 一键电影模式
注:文章参考《head first设计模式》一书,非常值得学习的一本书。转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/25837275这个模式比较简单,嘿嘿,简单写一下。老样子,先看 外观模式(Facade Pattern)定义:提供一个统一的接口,用来访问子系统中的一群接口,外观定义了一个高层的接口,让子系统更容易使用。其实就是转载 2017-06-23 18:05:22 · 260 阅读 · 0 评论 -
设计模式 适配器模式 以手机充电器为例
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/25833393坚持,坚持~继续设计模式,尼玛停了段时间就不想写了,一定要坚持~今天带来适配器模式老样子,定义:将一个类的接口转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以相互合作。这个定义还好,说适配器的功能就是把一个接口转成另一个接口。发现两张图片可以很好的解释适配器模转载 2017-06-23 17:56:55 · 257 阅读 · 0 评论 -
设计模式 命令模式 之 管理智能家电
注:文章参考《head first设计模式》一书,非常值得学习的一本书。继续设计模式哈,今天带来命令模式,二话不说,先看定义:定义:将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。这尼玛定义,看得人蛋疼,看不明白要淡定,我稍微简化一下:将请求封装成对象,将动作请求者和动作执行者解耦。好了,直接用例子来说明。需求:最近智能家电很火热啊,未来尼玛估计冰转载 2017-06-23 17:40:58 · 385 阅读 · 0 评论 -
设计模式 工厂模式 从卖肉夹馍说起
今天继续设计模式之旅,给大家带来工厂模式,简单列一下这个模式的家族:1、静态工厂模式2、简单工厂模式3、工厂方法模式4、抽象工厂模式是不是觉得,我勒个去,这工厂还能列出这么多分类,哈哈,下面开始各个击破。1、静态工厂模式这个最常见了,项目中的辅助类,TextUtil.isEmpty等,类+静态方法。下面开始详细介绍:略。2、简单工厂模式下面开始谈谈卖肉夹馍,最近程序员卖肉夹馍很火,啥时候大牛们都去卖转载 2017-06-23 15:40:07 · 371 阅读 · 0 评论 -
设计模式 装饰者模式 带你重回传奇世界
今天继续设计模式之旅,给大家带来装饰者模式,国际惯例,先看定义。装饰者模式:若要扩展功能,装饰者提供了比集成更有弹性的替代方案,动态地将责任附加到对象上。先简单描述下装饰者模式发挥作用的地方,当我们设计好了一个类,我们需要给这个类添加一些辅助的功能,并且不希望改变这个类的代码,这时候就是装饰者模式大展雄威的时候了。这里还体现了一个原则:类应该对扩展开放,对修改关闭。下面进入正题,今天在那看电影,忽然转载 2017-06-22 20:41:31 · 291 阅读 · 0 评论 -
设计模式 观察者模式 以微信公众服务为例
继续设计模式的文章,今天给大家带来观察者模式。先来看看观察者模式的定义:定义了对象之间的一对多的依赖,这样一来,当一个对象改变时,它的所有的依赖者都会收到通知并自动更新。好了,对于定义的理解总是需要实例来解析的,如今的微信服务号相当火啊,下面就以微信服务号为背景,给大家介绍观察者模式。看一张图:其中每个使用者都有上图中的3条线,为了使图片清晰省略了。如上图所示,服务号就是我们的主题,使用者就是观察者转载 2017-06-22 19:12:00 · 247 阅读 · 0 评论 -
设计模式 策略模式 以角色游戏为背景
今天不想写代码,给大家带来一篇设计模式的文章,帮助大家可以把系统组织成容易了解、容易维护、具有弹性的架构。先来看看策略模式的定义:策略模式(Strategy Pattern):定义了算法族,分别封装起来,让它们之间可相互替换,此模式让算法的变化独立于使用算法的客户。好了,对于定义,肯定不是一眼就能看明白的,不然这篇文章就收尾了,对于定于大家简单扫一眼,知道个大概,然后继续读下面的文章,读完以后再来回转载 2017-06-22 16:49:37 · 345 阅读 · 0 评论 -
设计模式 状态模式 以自动售货机为例
状态模式给了我眼前一亮的感觉啊,值得学习~先看定义:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。定义又开始模糊了,理一下,当对象的内部状态改变时,它的行为跟随状态的改变而改变了,看起来好像重新初始化了一个类似的。下面使用个例子来说明状态模式的用法,现在有个自动售货机的代码需要我们来写,状态图如下:分析一个这个状态图:a、包含4个状态(我们使用4个int型常量来表示)b、包含3个转载 2017-06-24 17:40:51 · 370 阅读 · 0 评论
分享