【设计模式】
@Herry
懒人
展开
-
OO设计模式初总结
纵览大纲创建型模式代表作:工厂方法–雷锋依然在人间定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂模式使一个类的实例化延迟到其子类。结构型模式代表作:外观模式–牛市股票还会亏钱?为子系统的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。行为型模式代表作1:观察者模式:老板回来,我不知道...原创 2018-06-19 21:41:20 · 407 阅读 · 23 评论 -
单例模式(创建型)--计划生类?
引言:保证一个类仅有一个实例,并提供一个访问它的全局访问点。简介:为了保证我们只实例化一个对象,并且它可以提供一个访问该实例的方法,那我们就只能给上把锁。/// <summary> /// Singleton类,定义一个GetInstance操作,允许客户访问它的唯一实例。GetInstance是一个静态方法,主要负责创建自己的唯一实例。 /// </...原创 2018-06-27 10:20:55 · 203 阅读 · 31 评论 -
桥接模式(结构型)--手机软件能否统一
我们为什么要用合成/聚合关系? 因为聚合表示一种弱的“拥有关系” ,体现的是A对象可以包含B对象,但B对象不是A对象的一部分;合成则是一种强的“拥有关系”, 体现了严格的部分和整体的关系,部分和整体的声明周期一样。(例如:大雁和翅膀是合成关系,大雁和雁群是聚合关系。如同手机和软件是合成关系,不同型号手机是聚合关系)对象的继承关系是在编译时就定义好了,所以无法再运行时改变从父类继承的实现。...原创 2018-06-27 11:10:02 · 224 阅读 · 32 评论 -
设计模式总结
前言: OO精神–可维护性、可扩展性、可复用性、灵活性好。OO基础:对象:是一个自包含的实体,用一组可识别的特性和行为来标识。(比如herry 就是一个对象,因为看得见摸得着)类:具有相同属性和功能的对象的抽象的集合。(男人女人都属于人类,)实例:就是一个真实的对象,用new关键字来创建;实例化就是创建对象的过程。接口:把隐式公共方法和属性组合起来,以封装特定功能的一个集合。一旦类...原创 2018-06-28 17:16:46 · 206 阅读 · 29 评论 -
桥接与适配器关系
什么是“适配器”?小白简介:我想要一个三头插座的充电器但是现在的插排都两头的插座所以我想要一个连接三头插座的线,那么这个使用过程就是适配器模式,其中需要的三头插座就是适配类。适配器模式(Adapter):将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。...原创 2018-10-11 16:01:09 · 383 阅读 · 7 评论 -
计算器设计--简单工厂
What’s this?Factory 工厂实际是对所有的类做了一个检查判断而并非类似于if语句一样每一个都进行判断,而是利用swith case 语句进行选择(参考swith case)工厂类一般用静态方法,通过接收的参数不同来返回不同的对象实例,不修改代码的话是无法扩展的(就是每次增加一个类,就需要在工厂方法里面添加一个case) Please look at the class dia...原创 2018-10-13 09:09:58 · 203 阅读 · 6 评论 -
策略模式--实现商场打折
前言:上一篇博客中写明了简单工厂的引用,其实这篇博客和上一篇类似,是利用了策略加简单工厂的方法实现的。为了我们的重构可以运用上设计模式,本次运用了客户端的形式展现出来,具体请往下看:策略模式:顾名思义即是:我提供不同的策略然后你自己选择即可。定义:它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。小提示:面向对象编程,并不是类越多越好...原创 2018-10-13 12:32:41 · 1357 阅读 · 7 评论 -
观察者--如果你的老板悄悄回来了呢
故事联想:小白正在打着LOL,正在打着起劲的时候忘记了看窗户了,这个时候老板回来了,恰巧你让帮忙看着的小李在忙着看电视剧呢,这个时候我们该怎么办呢?这个时候需要我们有人同时通知一下他们老板回来了,让大家继续工作,那么任务来了,我该怎么样才能让两个正在玩着的人通知一下呢,这个时候我们第一时间想到如果有个人看着就好了,但是他也不能全程都看着啊,那就要从老板身上下手,让老板一回来就自动通知我们,请忘...原创 2018-10-13 16:47:09 · 173 阅读 · 11 评论