设计模式
文章平均质量分 77
wangyan9110
菜鸟网络,我的个人博客http://yywang.info/
展开
-
设计模式学习--Builder
WhatBuilder:将一个复杂的对象的构建和表示分离,使得同样的构建过程可以创建不同的表示。WhyBuilder也是创建型模式的一种,它是一步一步的向导式的创建一个复杂的对象,Builder接口定义创建复杂对象的零部件,Director根据客户端端传入的builder按照一定的步骤创建完成复杂对象的创建。Builder适用于比较复杂的对象的创建,该对象的创建原创 2014-08-02 20:32:33 · 1093 阅读 · 0 评论 -
设计模式学习--Factory Method
WhatFactory Method:定义一个创建对象的接口,让子类来决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。WhyFactory Method是一个比较基础的创建型模式,它主要在于由子类决定实例化哪一个类。主要用于框架代码或者工具包中。适用于如下场景:1、当一个类不知道它所必须创建的对象的类的时候2、当一个类希望由原创 2014-08-01 00:20:24 · 1647 阅读 · 1 评论 -
设计模式学习--Abstarct Factory
WhatAbstarct Factory:提供一个创建一系列相关或相互依赖的接口,而无需指定他们具体类。WhyAbstarct Factory是创建型设计模式的一种,主要在创建对象时解耦,避免对象的直接依赖,方便替换与定制。常见的比如:一个功能有两种不同的风格,需要根据配置来切换不同的风格时,或者在一个需要适用于多个数据库切换的程序中,都会使用Abstact Fac原创 2014-08-01 00:16:31 · 1408 阅读 · 0 评论 -
设计模式学习--Prototype
WhatPrototype:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。WhyPrototype适用于在一个类的实例有几种不同的状态组合的一种时,建立相应的数目的原型并克隆她们,要比每次使用合适的状态创建它们方便一些,或者为了避免创建一个与产品类层次平行的工厂类层次时,要实例化一的类在运行时动态指定时。How假设如下场景:有一个复原创 2014-08-09 16:40:37 · 1137 阅读 · 0 评论 -
设计模式学习–Decorator
WhatDecorator:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更加灵活。WhyDecorator模式适用于可以动态的给对象增删职责,比如qq秀我们可以选择自己形象,并动态的添加衣服以及装饰,让自己的形象感觉高大上起来。Decorator适用于如下情况:1.在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职原创 2014-08-26 23:35:41 · 1310 阅读 · 0 评论 -
设计模式学习--Singleton
WhatSingleton:保证一个类仅有一个实例,并提供一个访问它的全局访问点。WhySingletion是我比较熟悉的设计模式之一,在平常的开发过程中,也曾几次用到,它主要适用于如下场景:1、当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。2、当这个唯一实例应该是通过子类可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。在系统原创 2014-08-14 23:30:32 · 970 阅读 · 0 评论 -
如何做详细设计之序
详细设计是软件开发中非常重要的环节,无论你是工作几年的技术大牛,还是只有一两年工作经验的小菜。可能你看到设计两个字,就觉得非常高大上,然而你只要在用心写代码,在思考如何定义方法,如何定义类,你都在做着详细设计。至于做的怎么样,那就另说了。详细设计涉及哪些内容?首先详细设计不同于架构设计,架构设计主要关注系统的架构模型、系统开发语言选型、系统数据存储方式选型、系统模块的划分以及系统模原创 2015-01-05 21:29:16 · 1105 阅读 · 0 评论 -
如何实现Builder模式
在构建大对象时,对象的属性比较多,我们可以采用一个构造器或者使用空的构造器构造,然后使用setter方法去设置。在使用者使用这些方法时,会很多冗长的构造器参数列表或者setter方法。我们可以使用Builder模式来简化大对象的构造,提高代码的简洁性,同时提高使用者的编码体验。下面我们将介绍在Java8之前、使用极简代码利器Lombok、Java8之后的Builder模式。Pre Java8我们先来原创 2017-05-06 18:46:53 · 1863 阅读 · 0 评论