摘要: 定义:给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子。 类型:行为类模式 类图: 解释器模式是一个比较少用的模式,本人之前也没有用过这个模式。下面我们就来一起看一下解释器模式。 解释器模式的结构 抽象解释器:声明一个所有具体表达式都要实现的抽象接口(或者抽 阅读全文
posted @ 2016-02-19 17:36 哼哼哈哈二将 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 生活中的一个例子: 就拿汽车在路上行驶的来说。即有小汽车又有公共汽车,它们都不但能在市区中的公路上行驶,也能在高速公路上行驶。这你会发现,对于交通工具(汽车)有不同的类型,然而它们所行驶的环境(路)也在变化,在软件系统中就要适应两个方面的变化?怎样实现才能应对这种变化呢?概述:在软件系统中,某些类型 阅读全文
posted @ 2016-02-19 16:29 哼哼哈哈二将 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 【转】建造者模式 一个人活到70岁以上,都会经历这样的几个阶段:婴儿,少年,青年,中年,老年。并且每个人在各个阶段肯定是不一样的呀,我觉得可以说世界上不存在两个人在人生的这5个阶段的生活完全一样,但是活到70岁以上的人,都经历了这几个阶段是肯定的。实际上这是一个比较经典的建造者模式的例子了。 1.初 阅读全文
posted @ 2016-02-18 17:30 哼哼哈哈二将 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 【转载】对象的克隆——原型模式(一) 张纪中版《西游记》以出乎意料的造型和雷人的台词遭到广大观众朋友的热议,我们在此对该话题不作过多讨论。但无论是哪个版本的《西游记》,孙悟空都是其中的一号雄性主角,关于他(或它)拔毛变小猴的故事几乎人人皆知,孙悟空可以用猴毛根据自己的形象,复制(又称“克隆”或“拷贝 阅读全文
posted @ 2016-01-29 14:04 哼哼哈哈二将 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 对于面向对象软件系统的设计而言,在支持可维护性的同时,提高系统的可复用性是一个至关重要的问题,如何同时提高一个软件系统的可维护性和可复用性是面向对象设计需要解决的核心问题之一。在面向对象设计中,可维护性的复用是以设计原则为基础的。每一个原则都蕴含一些面向对象设计的思想,可以从不同的角度提升一个软件结 阅读全文
posted @ 2016-01-27 17:39 哼哼哈哈二将 阅读(1537) 评论(0) 推荐(0) 编辑
摘要: 设计模式学习笔记-模板方法模式 1. 概述 定义一个操作中的算法的骨架,而将步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义算法的某些特定步骤。 2. 模式中的角色 2.1 抽象类(AbstractClass):实现了模板方法,定义了算法的骨架。 2.2 具体类(Concrete 阅读全文
posted @ 2016-01-27 17:11 哼哼哈哈二将 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 定义:用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。 类型:行为类模式 看看结构图的形象描述吧: 中介者模式的结构 中介者模式又称为调停者模式,从类图中看,共分为3部分: 抽象中介者:定义好同事类对象到中介者对象的接口,用 阅读全文
posted @ 2016-01-27 16:44 哼哼哈哈二将 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 享元模式: 先让我们来看一个应用场景: 比如说一个文本系统,每个字母定一个对象,那么大小写字母一共就是52个,那么就要定义52个对象。如果有一个1M的文本,那么字母是何其的多,如果每个字母都定义一个对象那么内存早就爆了。那么如果要是每个字母都共享一个对象,那么就大大节约了资源。也就是说在一个系统... 阅读全文
posted @ 2016-01-27 11:01 哼哼哈哈二将 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 设计模式--外观模式Facade(结构型):1. 概述 外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。例子1:一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该电源总开关可以同... 阅读全文
posted @ 2016-01-26 11:13 哼哼哈哈二将 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 命令模式(Command)命令大家都不会陌生,那么在开始命令模式之前,可以想象一下生活中的命令模式的特点:如老板命令你完成一个OA项目是一个命令,接着看看其特点:1、在上面的命令中,命令的执行者肯定是聪明的你了。具体的执行方法,可能是通过vs实现,或者是通过eclipse实现,由此看来:命令要有个命... 阅读全文
posted @ 2016-01-25 20:15 哼哼哈哈二将 阅读(287) 评论(0) 推荐(0) 编辑