摘要: 一、引言 相信猿友都大大小小经历过一些面试,其中有道经典题目,场景是猫咪叫了一声,老鼠跑了,主人被惊醒(设计有扩展性的可加分)。对于初学者来说,可能一脸懵逼,这啥跟啥啊是,其实博主当年也这感觉,O(∩_∩)O哈哈~好了,废话不多说,今天我们要学习的内容就是要解决这种业务场景——观察者模式,又叫发布- 阅读全文
posted @ 2017-08-20 00:55 快跑啊兔兔 阅读(1203) 评论(0) 推荐(0)
摘要: 一、引言 上篇博客中学习了命令模式,是将行为抽象为命令,使得行为请求者和接收者形成低耦合关系。我们知道行为型设计模式关注的是对象职责的分离,今天我们将学习一个新的设计模式,迭代器模式: 二、迭代器模式 定义:提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部显示 下面是迭代器模式结构 阅读全文
posted @ 2017-08-18 18:51 快跑啊兔兔 阅读(314) 评论(0) 推荐(0)
摘要: 一、引言 起初餐馆吃饭都是客人和厨师直接沟通,菜谱是一样的,可是客人多了的时候,有的客人可能有急事不吃了要退单,还有的客人点很多菜需要记录类别和次序等现象,这时服务员角色的出现解决了问题。那么面对某些无法抵御变化的“紧耦合”的场景如何做程序设计呢?命令模式设计便出现了,使得“行为请求者”与“行为实现 阅读全文
posted @ 2017-08-17 21:53 快跑啊兔兔 阅读(416) 评论(0) 推荐(0)
摘要: 一、引言 说到模板,顾名思义:就是样板,整体架构已经有了,你只需要填充自己的特定内容就可以了。如:简历模板,论文模板,PPT模板等 在软件设计中,模板方法模式与之很相似,下面请看我们今天要学习的模板方法模式 二、模板方法模式 定义:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子 阅读全文
posted @ 2017-08-14 23:55 快跑啊兔兔 阅读(666) 评论(0) 推荐(0)
摘要: 一、引言 在系统开发过程中,大多会遇到跨网络做系统应用间数据对接问题,但目标对象不允许跨网络直接访问数据,通常考虑到网络和安全性能等因素,开发者会在客户端和目标对象间添加一层中间层--代理层,也是即将要介绍的代理模式(Proxy)。 二、代理模式介绍 在介绍代理模式前,我们首先看一下代理模式的分类 阅读全文
posted @ 2017-08-10 18:55 快跑啊兔兔 阅读(377) 评论(0) 推荐(0)
摘要: 一、引言 在软件开发中,当我们需要重复使用某个对象时,如果重复使用new创建这个对象,内存就需要多次去申请内存空间,这样可能造成资源浪费甚至内存溢出等问题。。。下面请看我们我们今天学习的享元模式是如何解决这个问题的 二、享元模式的结构 借用下大话设计模式中的图,嘿嘿。。。 三、享元模式 定义:运用共 阅读全文
posted @ 2017-07-27 15:38 快跑啊兔兔 阅读(643) 评论(0) 推荐(1)
摘要: 一、引言 每逢去吃午饭路上,几个同事都要讨论一番投资理财的事情,时间久之,小白的我才勉强了解到股票与基金的区别,股票是自身直接与某只股票交易,可以通过分红或者低买高卖获利(自身需要分析股市多只股票的行情,如图示一);而基金是把钱交给基金公司,有专业人员帮你分析股市或债券等帮你理财(自身不需要直接关注 阅读全文
posted @ 2017-07-18 19:28 快跑啊兔兔 阅读(877) 评论(2) 推荐(3)
该文被密码保护。 阅读全文
posted @ 2017-07-06 01:12 快跑啊兔兔 阅读(536) 评论(4) 推荐(3)
摘要: 一、引言 IOC-Invertion of Control,即控制反转,是一种程序设计思想,世上本没有路,走的人多了便有了路,本文将一步步带你了解IOC设计思想的演进之路。 在学习IOC之前我们先初步了解几个概念 依赖(Dependency):就是有联系,表示一个类依赖于另一个类 依赖倒置原则(DI 阅读全文
posted @ 2017-07-02 00:58 快跑啊兔兔 阅读(2876) 评论(6) 推荐(22)
摘要: 一、引言 在软件开发中,我们经常会遇到处理简单对象和复合对象的情况,例如操作系统中文件目录的处理,目录可以包含单独的文件,也可以包括文件夹,而文件夹里又包含着文件,如此递归下去或者说是分级数据结构。由于简单对象和复合对象在功能上的区别,导致在操作过程中必须区分简单对象和复合对象,这样导致客户端调用时 阅读全文
posted @ 2017-06-26 17:24 快跑啊兔兔 阅读(1730) 评论(1) 推荐(0)