模式
文章平均质量分 53
塘外人
我是程序猿
展开
-
使用命令模式实现简单的支持撤销的计算器
1.支持的操作符有 "+", "-", "*", "/"2.撤销符号为"3.例如输入"1", "+", "2", "4.例如输入"100", "/", "2", "要求:1)使用TDD 2)使用命令模式5.简单类图设计6.单元测试package com.pattern.command;import junit.framewor原创 2011-12-16 01:24:16 · 1773 阅读 · 2 评论 -
【读书笔记】HeadFirst设计模式——命令模式简述
今天又复习了一遍命令模式命令模式是指,将“请求”封装成命令对象。命令对象是通过封装接收者和绑定一组动作来封装请求的。通过命令模式,将动作的请求者和动作的执行者进行解耦。即请求的调用者只接收并处理命令对象,但并不知道命令对象所封装的特定接收者。command模式的结构图:即,客户使用命令接收者(Receiver)来创建命令对象(ConcreteCommand),并将命令对象交原创 2012-03-21 00:04:32 · 1240 阅读 · 0 评论 -
桥接模式:从操作系统的可移植性说起
桥接模式:将抽象部分与它的实现部分分离,使得二者可以独立地变化。(说实话,这个很难理解!!!)抽象部分:继承关系里的抽象类,一般位于上层,平台无关实现部分:继承关系里的实现类,一般位于底层,平台相关、实现细节还是不理解,看实例讲解吧!比如对一个操作系统来说,平台无关的是高层代码,属于抽象部分,而底层Bootloader、驱动程序则属于实现部分,是平台相关的。这里假设该操作系统具有良原创 2012-03-26 23:12:22 · 5399 阅读 · 1 评论 -
【读书笔记】HeadFirst设计模式——代理和装饰者
代理——控制对主题的访问,有时控制主题的创建,完全代替主题,或者什么都不做,只是简单转发装饰者——只添加新功能,不做其他控制从使用者的角度看,代理一般不改变对象行为,装饰肯定会增加对象行为。代理:装饰者:原创 2012-03-25 01:36:50 · 1456 阅读 · 2 评论 -
【读书笔记】HeadFirst设计模式——装饰者和适配器的区别
装饰者和被装饰者实现了同一个接口,给被装饰者增加功能。即装饰者和被装饰者一定是在同一继承体系的。适配器和被适配者不实现同一接口,适配器将被适配者转换成客户适用的接口暴露给客户使用。装饰者:适配器:原创 2012-03-25 01:25:08 · 1488 阅读 · 0 评论 -
【读书笔记】HeadFirst设计模式——状态和策略
一、状态模式实现:1.每个动作一个方法2.每个状态一个类二、状态模式和策略模式的区别:状态模式——状态频繁的发生变化策略模式——策略在制定后,一般不变状态:策略:原创 2012-03-25 01:22:02 · 1237 阅读 · 0 评论 -
【读书笔记】HeadFirst设计模式——工厂模式简述
简单工厂:提供一个方法创建单个对象(方法内部往往包含对参数的判断来创建具体的对象),供外部对象使用——组合工厂方法:是一个特殊的模板方法,由子类创建具体的对象,供父类使用——继承抽象工厂:提供一组方法创建对象家族,供外部对象使用——组合PS:简单工厂可以看成是简单的抽象工厂,只创建一个对象的抽象工厂原创 2012-03-17 02:32:22 · 1150 阅读 · 0 评论 -
Bridge模式
一、 桥梁(Bridge)模式桥梁模式是一个非常有用的模式,也是比较复杂的一个模式。熟悉这个模式对于理解面向对象的设计原则,包括"开-闭"原则(OCP)以及组合/聚合复用原则(CARP)都很有帮助。理解好这两个原则,有助于形成正确的设计思想和培养良好的设计风格。注:《Java与模式》一书认为Bridge模式不是一个使用频率很高的模式,我不太赞同,我认为Bridge模式中蕴涵了很多设转载 2012-02-02 00:50:01 · 9089 阅读 · 0 评论 -
【读书笔记】HeadFirst设计模式——单件不简单:详述实现Singleton模式需要考虑的方方面面
(参考:深入浅出单实例Singleton设计模式)什么是单件?单件就是保证一个类仅有一个实例,并提供一个访问它的全局访问点。——GOF单件模式简单吗?简单,的确简单,因为只有一个类。单件不简单!其实单件并不见得简单,而且还有点小复杂。其复杂度正是为了保证单件所要达到“仅有一个实例”的宏伟目标而引起的。当然在一般情况下,单件是简单的。但是在考虑了懒加载、并发、原创 2012-03-20 00:59:12 · 1330 阅读 · 0 评论