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
接策略模式-4,其实是讲的一个主题,写在一个里面超长了,只好分成了两个,请见谅! 3:扩展示例,实现方式一 经过上面的测试可以看出,通过使用策略模式,已经实现好了两种支付方式了。如果现在要增加一种支付方式,要求能支付到银行卡,该怎么扩展最简单呢? 应该新增加一种支付到银行卡的策略实现,然后通过继承来扩展支付上下文,在里面添加新的支付方式需要的新的数据,比如银行卡账户,然
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之策略模式-4
3.3 Context和Strategy的关系 在策略模式中,通常是上下文使用具体的策略实现对象,反过来,策略实现对象也可以从上下文获取所需要的数据,因此可以将上下文当参数传递给策略实现对象,这种情况下上下文和策略实现对象是紧密耦合的。 &n
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之策略模式-3
3 模式讲解3.1 认识策略模式(1)策略模式的功能 策略模式的功能是把具体的算法实现,从具体的业务处理里面独立出来,把它们实现成为单独的算法类,从而形成一系列的算法,并让这些算法可以相互替换。 策略模式的重心不是如何来实现算法,而是如何组织、调用这些算法,从而让程序结构更灵活、具有更好的维护性和扩展性。(2)策略模式和if-else语句 看了前面的示例,很多
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之策略模式-2
2 解决方案2.1 策略模式来解决 用来解决上述问题的一个合理的解决方案就是策略模式。那么什么是策略模式呢?(1)策略模式定义 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。(2)应用策略模式来解决的思路 仔细分析上面的问题,先来把它抽象一下,各种计算报价的计算方式就好比是具体的算法,而使用这些计算方式
lyx4873281
·
2011-07-05 10:00
设计模式
模式2.
研磨设计模式
之策略模式-1
首先感谢众多朋友的支持、评论和鼓励,只有多多努力,写点好的博文来回报大家的好意! 接下来想写写另外一个虽然较简单,但是使用很频繁的模式——策略模式 策略模式(Strategy) 1 场景问题 1.1 报价管理 向客户报价,对于销售部门的人来讲,这是
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之单例模式-4
3.8 在Java中一种更好的单例实现方式 根据上面的分析,常见的两种单例实现方式都存在小小的缺陷,那么有没有一种方案,既能够实现延迟加载,又能够实现线程安全呢? 还真有高人想到这样的解决方案了,这个解决方案被称为Lazyinitializationholderclass模式,这个模式综合使用了Java的类级内部类和多线程缺省同步锁的知识,很巧妙的同时实现了延迟加载和线程安
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之单例模式-3
3.3 延迟加载的思想 单例模式的懒汉式实现方式体现了延迟加载的思想,什么是延迟加载呢? 通俗点说,就是一开始不要加载资源或者数据,一直等,等到马上就要使用这个资源或者数据了,躲不过去了才加载,所以也称LazyLoad,不是懒惰啊,是“延迟加载”,这在实际开发中是一种很常见的思想,尽可能的节约资源。 体现在什么地方呢?看如下代码:3.4 缓存的思想
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之单例模式-2
3 模式讲解3.1 认识单例模式(1)单例模式的功能 单例模式的功能是用来保证这个类在运行期间只会被创建一个类实例,另外单例模式还提供了一个全局唯一访问这个类实例的访问点,就是那个getInstance的方法。不管采用懒汉式还是饿汉式的实现方式,这个全局访问点是一样的。 对于单例模式而言,不管采用何种实现方式,它都是只关心类实例的创建问题,并不关心具体的业务功能。(2)单例
lyx4873281
·
2011-07-05 10:00
设计模式
模式3.
研磨设计模式
之单例模式-1
单例模式(Singleton) 1 场景问题1.1 读取配置文件的内容 考虑这样一个应用,读取配置文件的内容。 很多应用项目,都有与应用相关的配置文件,这些配置文件多是由项目开发人员自定义的,在里面定义一些应用需要的参数数据。当然在实际的项目中,这种配置文件多采用xml格式的。也有采用properties格式的,毕竟使用Java来读取properties格式的配置文件比较
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之装饰模式-4
3.3 装饰模式和AOP 装饰模式和AOP在思想上有共同之处。可能有些朋友还不太了解AOP,下面先简单介绍一下AOP的基础知识。1:什么是AOP——面向方面编程 AOP是一种编程范式,提供从另一个角度来考虑程序结构以完善面向对象编程(OOP)。 在面向对象开发中,考虑系统的角度通常是纵向的,比如我们经常画出的如下的系统架构图,默认都是从上到下,上层依赖于下层,如
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之装饰模式-3
3 模式讲解3.1 认识装饰模式(1)模式功能 装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象增加功能,相当于是改变了对象的外观。当装饰过后,从外部使用系统的角度看,就不再是使用原始的那个对象了,而是使用被一系列的装饰器装饰过后的对象。 这样就能够灵活的改变一个对象的功能,只要动态组合的装饰器发生了改变,那么最终所得到的对象的功能也就发生了改变。
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之装饰模式-2
2 解决方案2.1 装饰模式来解决 用来解决上述问题的一个合理的解决方案,就是使用装饰模式。那么什么是装饰模式呢?(1)装饰模式定义 (2)应用装饰模式来解决的思路 虽然经过简化,业务简单了很多,但是需要解决的问题不会少,还是要解决:要透明的给一个对象增加功能,并实现功能的动态组合。 所谓透明的给一个对象增加功能,换句话说就是要给一个对象增加功能,但是不能让这个
lyx4873281
·
2011-07-05 10:00
设计模式
模式5.
研磨设计模式
之装饰模式-1
装饰模式(Decorator)1 场景问题1.1 复杂的奖金计算 考虑这样一个实际应用:就是如何实现灵活的奖金计算。 奖金计算是相对复杂的功能,尤其是对于业务部门的奖金计算方式,是非常复杂的,除了业务功能复杂外,另外一个麻烦之处是计算方式还经常需要变动,因为业务部门经常通过调整奖金的计算方式来激励士气。 先从业务上看看现有的奖金计算方式的复杂性:首先是奖金分类:
lyx4873281
·
2011-07-05 10:19
设计模式
模式5.
研磨设计模式
之装饰模式-1
装饰模式(Decorator)1 场景问题1.1 复杂的奖金计算 考虑这样一个实际应用:就是如何实现灵活的奖金计算。 奖金计算是相对复杂的功能,尤其是对于业务部门的奖金计算方式,是非常复杂的,除了业务功能复杂外,另外一个麻烦之处是计算方式还经常需要变动,因为业务部门经常通过调整奖金的计算方式来激励士气。 先从业务上看看现有的奖金计算方式的复杂性:首先是奖金分类:
lyx4873281
·
2011-07-05 10:00
设计模式
研磨设计模式
之简单工厂模式-3
3 模式讲解3.1 典型疑问 首先来解决一个常见的疑问:可能有朋友会认为,上面示例中的简单工厂看起来不就是把客户端里面的“newImpl()”移动到简单工厂里面吗?不还是一样通过new一个实现类来得到接口吗?把“newImpl()”这句话放到客户端和放到简单工厂里面有什么不同吗? 理解这个问题的重点就在于理解简单工厂所处的位置。 根据前面的学习,我们知道接口
lyx4873281
·
2011-07-05 10:00
简单工厂模式
研磨设计模式
之简单工厂模式-2
2 解决方案1 简单工厂来解决 用来解决上述问题的一个合理的解决方案就是简单工厂,那么什么是简单工厂呢?1:简单工厂定义2:应用简单工厂来解决的思路 分析上面的问题,虽然不能让模块外部知道模块内的具体实现,但是模块内部是可以知道实现类的,而且创建接口是需要具体实现类的。 那么干脆在模块内部新建一个类,在这个类里面来创建接口,然后把创建好的接口返回给客户端,这样外
lyx4873281
·
2011-07-05 10:00
简单工厂模式
模式6.
研磨设计模式
之简单工厂模式-1
简单工厂 简单工厂不是一个标准的设计模式,但是它实在是太常用了,简单而又神奇,所以还是需要好好掌握的,就当是对学习设计模式的热身运动吧。 为了保持一致性,我们尽量按照学习其它模式的步骤来进行学习。1 场景问题 大家都知道,在Java应用开发中,要“面向接口编程”。 那么什么是接口?接口有什么作用?接口如何使用?一起来回顾一下:1.1 接口回顾(1)
lyx4873281
·
2011-07-05 10:00
简单工厂模式
原型设计模式prototype
基于《
研磨设计模式
》,没什么实质突破,简单的记录一下 问题引人:考虑一个订单系统。
hnzhoujunmei
·
2011-05-06 11:00
设计模式
数据结构
prototype
原型设计模式prototype
基于《
研磨设计模式
》,没什么实质突破,简单的记录一下 问题引人:考虑一个订单系统。
hnzhoujunmei
·
2011-05-06 11:00
设计模式
数据结构
prototype
研磨设计模式
笔记1
最近看到《
研磨设计模式
》一书,开始是从书评得到此书不错,后来看到作者的博客,初看了几个模式的讲解,受益非浅。很多模式的原理讲得通透,应用案例也有极强的针对性。个人认为是学习设计模式非常好的教程。
风中绝响
·
2011-05-06 10:09
设计模式
js
Web
web开发
休闲
20110430规划一些任务
整理下最近要干的事情: 毕业设计添加功能,把里面的核心代码什么的提炼一下 毕业设计的文档要在10号前搞定
研磨设计模式
那本书 项目中用到的一些核心的东西整理一下 数据库的书籍那本mysl性能
悲剧了
·
2011-04-30 17:00
设计模式
maven
Flex
敏捷开发
jbpm
研磨设计模式
之简单工厂模式-3
3 模式讲解3.1 典型疑问 首先来解决一个常见的疑问:可能有朋友会认为,上面示例中的简单工厂看起来不就是把客户端里面的“newImpl()”移动到简单工厂里面吗?不还是一样通过new一个实现类来得到接口吗?把“newImpl()”这句话放到客户端和放到简单工厂里面有什么不同吗? 理解这个问题的重点就在于理解简单工厂所处的位置。 根据前面的学习,我们知道接口是用
seaizon
·
2011-03-22 15:00
设计模式
数据结构
编程
配置管理
IOC
研磨设计模式
笔记(一)之简单工厂模式
简单工厂:工厂就是用来创造东西的,在java里面,通常是用来创造接口的,也可以创造抽象类,或是具体的类实例。其本质是:选择实现优点:帮助封装,真正面向接口编程;解耦-客户端根本不知道接口是由谁实现的。下面就写一个简单的例子:先定义一个USB的简单接口行为:/*****USB产品的行为接口**修改历史**创建(Addedbyzengzhanghuaon2011-3-14)**@authorzengz
teedry
·
2011-03-20 18:00
设计笔记开篇
最近正在看
研磨设计模式
,虽然之前也有断断续续看过下其它经典的设计模式的书,总感觉看起来没那么通俗易懂,而正在看的
研磨设计模式
,作者把设计模式解释得很透彻,所以想写下笔记,以后可以上来看下。
teedry
·
2011-03-20 17:00
设计模式
我也来凑热闹--单例模式(3)
写完了前面两篇,接下来,写一下《
研磨设计模式
》里面独特的地方。 对于前面的单例设计模式的实现,可以分为两类:懒汉模式(代码中的,1,3,4),跟饿汉模式(代码中的2)。
happenZheng
·
2011-02-18 16:15
java
设计模式
单例模式
饿汉模式
懒汉模式
我也来凑热闹--单例模式(1)
先声明,我只是做个笔记,通过看《
研磨设计模式
》一书中的“单例模式”,而自己再复述一遍: 单例:实际上就是使某类,在全局上,只有一个实例,只允许提供给外界一个全局的访问点。
happenZheng
·
2011-02-16 10:23
java
设计模式
单例模式
饿汉模式
懒汉模式
单利模式扩展,用缓存控制实例个数
JavaEye上作者chjavach写的
研磨设计模式
非常好,现在正在学习。
GaoMatrix
·
2011-02-15 15:00
《
研磨设计模式
》 配套源代码
《
研磨设计模式
》一书的源代码已经整理好了,现提供各位朋友下载。
chjavach
·
2011-02-14 17:00
设计模式
Blog
idea
研磨设计模式
配套源代码发放
《
研磨设计模式
》一书的源代码已经整理好了,现提供各位朋友下载。
chjavach
·
2011-02-14 09:00
设计模式
《
研磨设计模式
》又十大了~
一年一度的十大IT技术图书评选又一本书入围了~http://book.51cto.com/exp/bookrating2010/book.php前年是《大话存储》,去年是《数据重现》,今年是《
研磨设计模式
kobeluan
·
2011-01-21 10:06
职场
休闲
技术图书
《
研磨设计模式
》试读样章 第五章
第5章 单例模式(Singleton) 5.1 场景问题5.1.1 读取配置文件的内容考虑这样一个应用,读取配置文件的内容。很多应用项目,都有与应用相关的配置文件,这些配置文件很多是由项目开发人员自定义的,在里面定义一些应用需要的参数数据。当然在实际的项目中,这种配置文件多采用xml格式,也有采用properties格式的,毕竟使用Java来读取properties格式的配置文件比较简单。现在要读
zhangxin09
·
2011-01-19 17:00
java
设计模式
String
properties
null
Class
《
研磨设计模式
》试读样章 第二章
第2章 简单工厂简单工厂不是一个标准的设计模式,但是它实在是太常用了,简单而又神奇,所以需要好好掌握它,就当是学习设计模式的热身运动吧。为了保持一致性,我们尽量按照学习其他模式的步骤来进行学习。2.1 场景问题大家都知道,在Java应用开发中,要“面向接口编程”。那么什么是接口?接口有什么作用?接口如何使用?我们一起来回顾一下。2.1.1 接口回顾1:Java中接口的概念在Java中接口是一种特殊
zhangxin09
·
2011-01-19 17:00
设计模式
编程
api
String
properties
Class
《
研磨设计模式
》试读样章 第一章
第1章 设计模式基础1.1 设计模式是什么1.1.1 什么是模式 从字面上来看,模,就是模型、模板的意思;式,就是方式、方法的意思。综合起来,所谓模式就是:可以作为模型或模板的方式或方法。再简单点说就是可以作为样板的方式或方法,类似于大家所熟悉的范例。1.1.2 设计模式的概念按照上面的理解,设计模式指的就是设计方面的模板,也即设计方面的方式或方法。1、设计模式是解决方案根据上面对设计模式的
zhangxin09
·
2011-01-19 17:00
请推荐IT相关的书籍
研磨设计模式
-垄断JaveEye设计类博文总榜TOP10,一本培养正确设计模式观念的好书这本书应该不错序号书名*作者 金额 网站出版社1项目管理修炼之道
hgq0011
·
2011-01-13 12:00
设计模式
敏捷开发
读书
UML
出版
请推荐IT相关的书籍
研磨设计模式
-垄断JaveEye设计类博文总榜TOP10,一本培养正确设计模式观念的好书这本书应该不错序号书名*作者金额网站出版社1项目管理修炼之道(美)罗斯曼著,郑柯译¥36.70卓越人民邮电出版社2SOA
hgq0011
·
2011-01-13 12:00
出版
读书
设计模式
UML
敏捷开发
关于
研磨设计模式
一书的源代码
看到有朋友在问:“哪里可以下载到
研磨设计模式
一书的源代码?”
chjavach
·
2011-01-06 17:00
设计模式
qq
出版
更新旧博文暨推荐好书《
研磨设计模式
》
最近收到《
研磨设计模式
》一书,感觉写得很好。看了一些章节后,再回想起Ext好像也有很多设计模式应用的地方,于是整理以前的一篇旧文《Ext与设计模式》,就是这么多啦。
zhangxin09
·
2010-12-31 11:00
java
设计模式
编程
ext
2010
研磨设计模式
的 前言
《
研磨设计模式
》一书已经上市,具体的信息请参见上一篇博文,这里就不多说了,免得JE做出他们认为合理的举动。
chjavach
·
2010-12-20 15:00
设计模式
workflow
项目管理
配置管理
化工
研磨设计模式
终于上市了
首先感谢大家长久以来的支持和鼓励,没有你们的大力帮助,是很难坚持走到今天的,因此,向你们致以诚挚的感谢! 另外有很多朋友在博客里面、QQ里面询问,到底什么时候能够看到书,这里集中公告一下: &
chjavach
·
2010-12-17 12:00
设计模式
qq
IE
公告
出版
《
研磨设计模式
》精研GOF模式、程序员居家必备
之前有很多人问我,你一搞出版的,还是技术图书,如何了解一本书技术水平的高下?羞怯的说:单单给我一本书,我只能通过稿件的结构、文字质量大概了解作者的责任心和文笔,技术品质、代码品质等等关键的、真正体现作者水平的东西无从判断!那凭啥说一本书色艺双绝内外兼修?!答:感觉。。。干了十年出版,与作者沟通的过程中,会感觉到一些东西。。。都是虚的!!!答:八九不离十。。。另外通过作者博客、论坛或者网站(如果有)
kobeluan
·
2010-12-17 09:27
java
设计模式
好书
休闲
垄断
研磨设计模式
样书 上照片
好消息,收到样书了,编辑说下周应该就可以进到书店了。 拍个照片,先睹为快: 再来一张: 有些厚,近800页,印刷质量还可以,双色也比较醒目和清晰。 拍的水平太差,呵呵,凑合着看看吧,远远没有看书那么醒目,更没有哪个质感了. 再来另外一边的
chjavach
·
2010-12-09 19:00
设计模式
idea
出版
研磨设计模式
之简单工厂模式-3
3 模式讲解3.1 典型疑问 首先来解决一个常见的疑问:可能有朋友会认为,上面示例中的简单工厂看起来不就是把客户端里面的“newImpl()”移动到简单工厂里面吗?不还是一样通过new一个实现类来得到接口吗?把“newImpl()”这句话放到客户端和放到简单工厂里面有什么不同吗? 理解这个问题的重点就在于理解简单工厂所处的位置。 根据前面的学习,我们知道接口是用
chjavach
·
2010-12-06 16:00
设计模式
编程
配置管理
IOC
idea
研磨设计模式
之简单工厂模式-2
2 解决方案1 简单工厂来解决 用来解决上述问题的一个合理的解决方案就是简单工厂,那么什么是简单工厂呢?1:简单工厂定义2:应用简单工厂来解决的思路 分析上面的问题,虽然不能让模块外部知道模块内的具体实现,但是模块内部是可以知道实现类的,而且创建接口是需要具体实现类的。 那么干脆在模块内部新建一个类,在这个类里面来创建接口,然后把创建好的接口返回给客户端,这样外
seaizon
·
2010-11-19 16:00
设计模式
编程
Blog
研磨设计模式
之简单工厂模式-1
继续
研磨设计模式
,来个简单的 简单工厂 简单工厂不是一个标准的设计模式,但是它实在是太常用了,简单而又神奇,所以还是需要好好掌握的,就当是对学习设计模式的热身运动吧。
seaizon
·
2010-11-19 16:00
设计模式
数据结构
编程
Blog
研磨设计模式
之简单工厂模式-2
2 解决方案1 简单工厂来解决 用来解决上述问题的一个合理的解决方案就是简单工厂,那么什么是简单工厂呢?1:简单工厂定义 2:应用简单工厂来解决的思路 分析上面的问题,虽然不能让模块外部知道模块内的具体实现,但是模块内部是可以知道实现类的,而且创建接口是需要具体实现类的。 那么干脆在模块内部新建一个类,在这个类里面来创建接口,然后把创建好的接口返回给客户端,这样
chjavach
·
2010-11-18 15:00
设计模式
编程
Blog
UML
出版
博文从首页被撤下,15天内不能发布到首页
您的博客文章'
研磨设计模式
之简单工厂模式-1'不符合该发布条件,从博客频道首页撤出。在15天之内,您的博客文章将无法在博客频道
chjavach
·
2010-11-02 17:00
设计模式
公告
八卦
idea
出版
研磨设计模式
之简单工厂模式-1
继续
研磨设计模式
,来个简单的 简单工厂 简单工厂不是一个标准的设计模式,但是它实在是太常用了,简单而又神奇,所以还是需要好好掌握的,就当是对学习设计模式的热身运动吧。
chjavach
·
2010-11-02 10:00
设计模式
spring
编程
IE
IOC
研磨设计模式
封面show
顺带做个广告,《
研磨设计模式
》一书由清华大学出版社 出版并发行,即将上市,敬请关注!
chjavach
·
2010-10-29 22:00
设计模式
IE
idea
出版
研磨设计模式
之抽象工厂模式-1
抽象工厂模式(AbstractFactory)1.1 场景问题1.1.1 选择组装电脑的配件 举个生活中常见的例子——组装电脑,我们在组装电脑的时候,通常需要选择一系列的配件,比如:CPU、硬盘、内存、主板、电源、机箱等等。为了使讨论简单点,只考虑选择CPU和主板的问题。 事实上,我们在选择CPU的时候,面临一系列的问题,比如:品牌、型号、针脚数目、主频等问题,只有把这些都
seaizon
·
2010-10-28 15:00
设计模式
生活
研磨设计模式
之抽象工厂模式-1
抽象工厂模式(Abstract Factory) 1.1 场景问题 1.1.1 选择组装电脑的配件 举个生活中常见的例子——组装电脑,我们在组装电脑的时候,通常需要选择一系列的配件,比如:CPU、硬盘、内存、主板、电源、机箱等等。为了使讨论简单点,只考虑选择CPU和主板的问题。 &
liliugen
·
2010-10-28 13:00
设计模式
生活
上一页
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
其他