Java 设计模式
设计模式是人们在面对同类型软件工程设计问题所总结的一些有用的经验,模式不是代码,而是某类问题的通用设计解决方案
QDJdeveloper
早已注定,我只能在荆棘中采拾鲜花,但重要的是要对胜利和信念充满执着
何塞-穆里尼奥
展开
-
设计模式入门
这段时间在看 <<Head First>> 设计模式一书,觉得非常不错,有必要总结一下,于是就想借鉴参考 <<Head First>> 把设计模式总结成一个系列的博客,方便自己日后来复习,今天我们就简单的来先一起入门一下,简单的探讨一下设计模式,设计模式是人们在面对同类型软件工程设计问题所总结的一些有用的经验,模式不是代码,而是某类问题的通用设计解决方案,设计模式的本质是使软件工程在维护性、扩展性、变化性、复杂度方面变成 O(N)原创 2017-06-16 12:45:44 · 1916 阅读 · 3 评论 -
设计模式之策略模式
这里我们还是用《Head First》一书中的例子来进行讲解,一步步来引出策略模式,在前几篇文章中我们分别分享了设计模式入门和单例模式以及非常重要的观察者模式,如果需要大家可以去看看,今天我们来由浅入深的一起来看看策略模式,看看策略模式的定义,在实际编码的过程中能解决那些重要的问题,以及主要是在那些场景下去使用,还有最重要的就是我们在实际的编码中如何一步步去实现原创 2017-06-17 21:45:41 · 1129 阅读 · 0 评论 -
设计模式之单例模式
在某些情况下,有些对象只需要一个就够了,即每个类只需要一个实例,简单来说单例模式的作用就是保证在整个应用程序的生命周期过程中,任何时刻,单例类的实例都只存在一个,单例模式确保某一个类只有一个实例,而且自行实例化,并向整个系统提供这个实例,单例模式在类中保存了它唯一实例的全局,同时还提供了访问该唯一实例的全局访问点一、使用场景 资源共享情况下,避免资源操作时造成的性能损耗,在控制...原创 2017-02-28 19:41:24 · 1297 阅读 · 0 评论 -
设计模式之观察者模式
观察者模式在实际开发中是一个使用率极高的一种设计模式,在设计模式中相比较来说也是必须要掌握的模式之一,观察者模式(有时又被称为发布(publish)- 订阅者(Subscribe)模式、模型 - 视图(View)模式等)只是叫法上不太一样,是软件设计的一种模式,在此种模式中,一个目标物件管理所有相依赖于它的观察者物件,并且在它本身的状态发生改变时主动发出通知,此种模式通常来实现事件处理系统原创 2017-06-04 14:33:07 · 1194 阅读 · 0 评论 -
设计模式之装饰者模式
装饰者模式(Decorator Pattern)允许想一个现有的对象添加新的功能,同时又不改变其结构,这种类型的设计模式属于结构性模式,它是作为现有的类的一个包装,这种模式创建了一个装饰类,用来包装原有的类,并保证类方法签名完整的前提下,提供额外的功能。一、装饰者模式简单介绍意图:动态的给对象添加一些额外的职责,在不想增加很多子类的情况下扩展类,将具体功能职责划分,同时继承装饰者模式。...原创 2018-05-09 23:45:14 · 438 阅读 · 0 评论 -
设计模式之模板方法模式
在模板(Template Pattern)中,一个抽象类公开定义了执行它的方式/模板,它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行,这种类型的设计模式属于行为型设计模式。今天我们就来一起学习探究下设计模式中的模板方法模式,下面是我们今天要学习的内容大纲一、模板方法模式简单介绍意图:定义一个操作中的算法骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法...原创 2018-05-24 23:35:00 · 394 阅读 · 1 评论 -
设计模式之建造者(Builder)模式
这里我们先来声明一下,建造者模式(Builder)也叫生成器模式,也就是说他们两个只是在叫法上稍有不同,指向的其实是一种模式,这个大家了解一下就好,建造者模式将一个复杂的对象的构建与它的表示相分离,使得同样的构建过程可以创建不同的表示,具体来说就是,它将客户端与包含多个组件部分的复杂对象的创建过程分离,客户端无需知道复杂对象的内部组成部分与装配方式,只需要知道所需建造者的类型即可,它关注如何一步一原创 2017-07-17 09:52:51 · 1093 阅读 · 2 评论