E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
研磨设计模式
研磨设计模式
之命令模式-5
3.5 队列请求 所谓队列请求,就是对命令对象进行排队,组成工作队列,然后依次取出命令对象来执行。多用多线程或者线程池来进行命令队列的处理,当然也可以不用多线程,就是一个线程,一个命令一个命令的循环处理,就是慢点。 继续宏命令的例子,其实在后厨,会收到很多很多的菜单,一般是按照菜单传递到后厨的先后顺序来进行处理,对每张菜单,假定也是按照菜品的先后顺序进行制作,那么在后厨就
chjavach
·
2010-07-20 10:00
设计模式
多线程
thread
qq
idea
研磨设计模式
之命令模式-4
3.4 宏命令 什么是宏命令呢?简单点说就是包含多个命令的命令,是一个命令的组合。举个例子来说吧,设想一下你去饭店吃饭的过程: (1)你走进一家饭店,找到座位坐下 (2)服务员走过来,递给你菜谱 (3)你开始点菜,服务员开始记录菜单,菜单是三联的,点菜完毕,服务员就会把菜单分成三份,一份给后厨,一份给收银台,一份保留备查。 (4)点完菜
chjavach
·
2010-07-16 07:00
设计模式
idea
研磨设计模式
之命令模式-3
3.3 可撤销的操作 可撤销操作的意思就是:放弃该操作,回到未执行该操作前的状态。这个功能是一个非常重要的功能,几乎所有GUI应用里面都有撤消操作的功能。GUI的菜单是命令模式最典型的应用之一,所以你总是能在菜单上找到撤销这样的菜单项。 &
chjavach
·
2010-07-13 08:00
设计模式
idea
研磨设计模式
之命令模式-2
3 模式讲解3.1 认识命令模式(1)命令模式的关键 命令模式的关键之处就是把请求封装成为对象,也就是命令对象,并定义了统一的执行操作的接口,这个命令对象可以被存储、转发、记录、处理、撤销等,整个命令模式都是围绕这个对象在进行。(2)命令模式的组装和调用 在命令模式中经常会有一个命令的组装者,用它来维护命令的“虚”实现和真实实现之间的关系。如果是超级智能的命令,也就是说命
chjavach
·
2010-07-10 07:00
设计模式
idea
研磨设计模式
之命令模式-1
命令模式也是开发中常见的一个模式,也不是太难,比较简单,下面来详细的写一下命令模式。 命令模式(Command)1 场景问题 1.1 如何开机 估计有些朋友看到这个标题会非常奇怪,电脑装配好了,如何开机?不就是按下启动按钮就可以了吗?难道还有什么玄机不成。 对于使用电脑的客户——就是我们来说,开机确实很简单,按下启动按钮,然后耐心等待就可以了。但是当我们按下启动按钮过
chjavach
·
2010-07-05 15:00
设计模式
数据结构
生活
软件测试
idea
研磨设计模式
之策略模式-6
3.4 策略模式结合模板方法模式 在实际应用策略模式的过程中,经常会出现这样一种情况,就是发现这一系列算法的实现上存在公共功能,甚至这一系列算法的实现步骤都是一样的,只是在某些局部步骤上有所不同,这个时候,就需要对策略模式进行些许的变化使用了。 对于一系列算法的实现上存在公共功能的情况,策略模式可以有如下三种实现方式:一个是在上下文当中实现公共功能,让所有具体的策略算法
chjavach
·
2010-07-01 08:00
设计模式
数据结构
编程
算法
八卦
研磨设计模式
之策略模式-5
接策略模式-4,其实是讲的一个主题,写在一个里面超长了,只好分成了两个,请见谅! 3:扩展示例,实现方式一 经过上面的测试可以看出,通过使用策略模式,已经实现好了两种支付方式了。如果现在要增加一种支付方式,要求能支付到银行卡,该怎么扩展最简单呢? 应该新增加一种支付到银行卡的策略实现,然后通过继承来扩展支付上下文,在里面添加新的支付方式需要的新的数据,比如银行卡账
chjavach
·
2010-06-28 07:00
设计模式
AOP
算法
chrome
idea
研磨设计模式
之策略模式-4
3.3 Context和Strategy的关系 在策略模式中,通常是上下文使用具体的策略实现对象,反过来,策略实现对象也可以从上下文获取所需要的数据,因此可以将上下文当参数传递给策略实现对象,这种情况下上下文和策略实现对象是紧密耦合的。 &
chjavach
·
2010-06-28 07:00
设计模式
算法
企业应用
研磨设计模式
之策略模式-3
3 模式讲解3.1 认识策略模式(1)策略模式的功能 策略模式的功能是把具体的算法实现,从具体的业务处理里面独立出来,把它们实现成为单独的算法类,从而形成一系列的算法,并让这些算法可以相互替换。 策略模式的重心不是如何来实现算法,而是如何组织、调用这些算法,从而让程序结构更灵活、具有更好的维护性和扩展性。(2)策略模式和if-else语句 看了前面的示例,很
chjavach
·
2010-06-24 21:00
设计模式
数据结构
编程
算法
面试
研磨设计模式
之策略模式-2
2 解决方案2.1 策略模式来解决 用来解决上述问题的一个合理的解决方案就是策略模式。那么什么是策略模式呢?(1)策略模式定义 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。(2)应用策略模式来解决的思路 仔细分析上面的问题,先来把它抽象一下,各种计算报价的计算方式就好比是具体的算法,而使用这些计算
chjavach
·
2010-06-23 20:00
设计模式
数据结构
算法
配置管理
IOC
研磨设计模式
之策略模式-1
首先感谢众多朋友的支持、评论和鼓励,只有多多努力,写点好的博文来回报大家的好意! 接下来想写写另外一个虽然较简单,但是使用很频繁的模式——策略模式 策略模式(Strategy) 1 场景问题 1.1 报价管理 向客户报价,
chjavach
·
2010-06-22 22:00
设计模式
算法
IE
研磨设计模式
之工厂方法模式-5
3.3 平行的类层次结构(1)什么是平行的类层次结构呢? 简单点说,假如有两个类层次结构,其中一个类层次中的每个类在另一个类层次中都有一个对应的类的结构,就被称为平行的类层次结构。 举个例子来说,硬盘对象有很多种,如分成台式机硬盘和笔记本硬盘,在台式机硬盘的具体实现上面,又有希捷、西数等不同品牌的实现,同样在笔记本硬盘上,也有希捷、日立、IBM等不同品牌的实现;硬盘对象具
chjavach
·
2010-06-20 09:00
设计模式
数据结构
xml
IOC
化工
研磨设计模式
之工厂方法模式-4
3.2 工厂方法模式与IoC/DI IoC——InversionofControl 控制反转 DI——DependencyInjection 依赖注入1:如何理解IoC/DI 要想理解上面两个概念,就必须搞清楚如下的问题:参与者都有谁?依赖:谁依赖于谁?为什么需要依赖? 注入:谁注入于谁?到底注入什么?控制反转:谁控制谁?控制什么?为何叫反转(有反转就应该有正转了)?依赖注入和控
chjavach
·
2010-06-17 08:00
设计模式
C++
c
C#
IOC
研磨设计模式
之工厂方法模式-3
3 模式讲解3.1 认识工厂方法模式(1)模式的功能 工厂方法的主要功能是让父类在不知道具体实现的情况下,完成自身的功能调用,而具体的实现延迟到子类来实现。 这样在设计的时候,不用去考虑具体的实现,需要某个对象,把它通过工厂方法返回就好了,在使用这些对象实现功能的时候还是通过接口来操作,这非常类似于IoC/DI的思想,这个在后面给大家稍详细点介绍一下。(2)实现成抽象类
chjavach
·
2010-06-17 08:00
设计模式
数据结构
IOC
研磨设计模式
之工厂方法模式-2
2 解决方案2.1 工厂方法模式来解决 用来解决上述问题的一个合理的解决方案就是工厂方法模式。那么什么是工厂方法模式呢?(1)工厂方法模式定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类,FactoryMethod使一个类的实例化延迟到其子类。 (2)应用工厂方法模式来解决的思路 仔细分析上面的问题,事实上在实现导出数据的业务功能对象里面,根本就
chjavach
·
2010-06-17 08:00
设计模式
数据结构
编程
idea
研磨设计模式
之工厂方法模式-1
做Java一晃就十年了,最近手痒痒,也决定跟随一下潮流,整个博客,写点东西,就算对自己的知识进行一个梳理和总结,也跟朋友们交流交流,希望能坚持下去。 先写写设计模式方面的内容吧,就是GoF的23个模式,先从大家最熟悉的工厂方法模式开始,这个最简单,明白的人多,看看是否能写出点跟别人不一样的东西,欢迎大家来热烈讨论,提出建议或意见,并进行批评指正,一概虚心接受,在此先谢过了! 另外,
chjavach
·
2010-06-17 08:00
设计模式
框架
网络应用
企业应用
idea
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他