设计模式
H.ZWei
这个作者很懒,什么都没留下…
展开
-
设计模式学习 - 工厂方法模式
上篇学习了简单工厂模式,简单工厂模式的优点就是工厂类封装具体对象的实现逻辑,会根据外部传入的选择条件来判断返回对应的具体对象,也就是调用者无需关心内部实现逻辑,只需传入所需对象的类型即可,同样的缺点也很明显,如果要通过工厂类的获取所需的具体对象,必须在工厂类中的静态方法先定义该类型才行,如果新增了类型,就要修改此前的静态方法中的判断语句,需要增加一个if或者case语句,来定义新类型,这样才能获取...原创 2018-06-20 23:03:49 · 267 阅读 · 0 评论 -
设计模式学习 - 简单工厂模式
一. 简单工厂模式简介定义简单工厂模式又称之静态工厂方法模式,由一个工厂类对象决定创建出哪类产品的实例。通俗的讲,就是通过传参的方式,在工厂类中判断,找出对应的实例返回。在现实中,工厂是负责生产产品的。在设计模式中,简单工厂模式也可以理解为负责生产某个类的实例对象。UML结构图Factory:工厂类,负责创建所有实例对象的内部逻辑,外部可以调用创建实例对象的方法,来得到...原创 2018-06-19 23:51:48 · 272 阅读 · 0 评论 -
UML各种图总结 - 精华
UML(Unified Modeling Language)是一种统一建模语言,为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。下面将对UML的九种图+包图的基本概念进行介绍以及各个图的使用场景。一、基本概念 如下图所示,UML图分为用例视图、设计视图、进程视图、实现视图和拓扑视图,又可以静动分为静态视图和动态视图。静态图分为:用例图,类图,对象图,包图,构件图,部署...转载 2018-06-19 21:39:12 · 989 阅读 · 0 评论 -
设计模式学习 - 观察者模式
近日,世界杯正在火热的进行中,幸好赛程不是在白天,大部分安排在夜间23点到2点间,避免了上班偷偷摸摸看世界杯,生怕被领导发现……可以熬夜也是一种痛苦啊……但NBA季后赛和总决赛就没有这么好了,好多赛程都在平时上班时间内进行,今年是火箭近些年最有希望夺冠的一年,当火箭在西部决赛拿到赛点的时候,感觉离冠军越来越近了,可是最终还是被勇士翻盘了;在这期间为了看比赛,上班总是在不断切换屏幕,怕领导突然进入办公室被发现,可就惨了。 由于跟前台的妹子平时聊的还比较好,事先跟前台妹子通通气了,如果领导来了,马上发震动消原创 2018-06-26 01:51:57 · 226 阅读 · 0 评论 -
设计模式学习 - 单例模式
定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。Singleton类,定义了一个getInstance方法,允许客户访问该方法获取唯一实例,getInstance是一个静态方法,主要负责创建自己及的唯一实例。单例模式的实现写法饿汉模式public class Singleton { //类加载时就会初始化 ,使用了static final进行修饰实例常量,也就是该常量不可改变了而...原创 2018-06-18 23:29:48 · 225 阅读 · 0 评论 -
设计模式学习 - 策略模式
某商场为迎接国庆的到来,决定开启商品促销活动,活动细节如下针对不同会员等级优惠的折扣有所不同,同时与消费金额所关联,消费金额在不同范围折扣优惠率也不一样。 - 普通会员:没有任何优惠折扣 - 初级会员:消费100-200元有5%的促销折扣,消费200(含200)以上元有10%促销折扣 - 中级会员:消费100-200元有10%的促销折扣,消费200(含200)以上元有15%促销折扣 - 高级会员:消费100-200元有15%的促销折扣,消费200(含200)以上元有20%促销折扣原创 2018-06-24 17:16:16 · 356 阅读 · 0 评论 -
设计模式学习 - 适配器模式
据说,姚明刚刚去NBA打球时,有记者采访姚明说:“在CBA和NBA最大的区别是什么?”,姚明的答案是“在NBA我需要翻译,而在CBA我不需要”,可见姚明刚开始是不懂外语的,在比赛中,怎样听懂明白教练的战术安排,此时就需要找到一个中间人进行翻译,把教练的话翻译成中文,姚明就可以听懂了原创 2018-06-24 11:08:27 · 366 阅读 · 0 评论 -
设计模式学习 - 代理模式
我托人去香港代购。 我:真实主题类 托人(中介黄牛):代理类 我和中介都有共同的行为,购买,于是可以比作抽象接口类。原创 2018-06-23 13:07:48 · 194 阅读 · 0 评论 -
设计模式学习 - 建造者模式(Builder)
建造者模式简介定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。用户只需指定需要建造的类型就可以得到它们,而具体的建造的过程和细节无需知道。UML结构图Builder:抽象建造类(或接口),抽象方法含有两部分,一部分是各个组件设置赋值的方法,另外一个是带返回值(具体产品类Product)的方法。ConcreteBuilder:具体建造类,继承...原创 2018-06-22 22:01:16 · 287 阅读 · 0 评论 -
设计模式学习 - 总结
经过了一个多星期的学习,设计模式总共有23种,只学了开发中常用的9种模式,整个学习计划分为两个阶段,第一阶段的学习就暂告一段落了。第一阶段:主要是设计模式的UML类图、定义理解、代码简单实现。第二阶段:主要结合Android源码中所涉及的设计模式,加深对设计模式的理解及灵活应用。下面是计划安排内容:设计模式六大原则创建型设计模式单例模式简单工厂模式工厂方法模式建造...原创 2018-06-26 22:29:58 · 258 阅读 · 2 评论