设计模式,设计模式-自动完成

Jabob Nielsen提出的10个可用性原则中有一个原则-防止出错(Error Prevention)。官网中有对这一原则的具体解释,这里不再复述。笔者认为还有一个防止出错的方法就是让用户选择而不是输入。在这里用户不需要思考如何输入,输入是否正确,这里以常见的“自动完成”来谈一下这个设计模式在当下的应用。  自动完成是一种属于反应性界面的强大模式。典型的模式是随着用户在... [阅读全文]

设计模式,我看设计模式

听完赵斌讲的设计模式后,我感觉对设计模式有了一点儿新的认识。 如何看设计模式: 1、在看的过程中,一定要随着它一起思考,把自己当做那个菜鸟,如果大鸟给你出相同的问题,你该怎么办。(个人见解) 2、不管是看图还是看代码都一定要细,对其中的关键字或者不同的地方多问几个为什么,找出各个模式的不同点。 例如:有的地方为什么要用static,... [阅读全文]

设计模式:设计模式(一)

0. Introduction  接触设计模式有两年时间了但直没有系统整理过为了不至于让自己思维被繁琐工作点点禁锢还是决定整理总结下为了能够真正做到有所收获整个系列会按照GoFDesign Patterns: Elements of Reusable Object-Oriented Software行文思路但不会照本宣科就是了Wikipedia上有关23种设计模式介绍非常全面CSDN上也可以下载中... [阅读全文]

java代理模式:Java设计模式的虚拟代理模式

虚拟代理模式(Virtual Proxy)是种节省内存技术它建议创建那些占用大量内存或处理复杂对象时把创建这类对象推迟到使用它时候在特定应用中区别部分功能由区别对象组成应用启动时候不会立即使用所有对象在这种情况下虚拟代理模式建议推迟对象创建直到应用需要它为止对象被应用第次引用时创建并且同个例子可以被重用这种思路方法优缺点并存  优点:  这种思路方法优点是在应用启动时由于不需要创建... [阅读全文]

java适配器模式:Java设计模式的适配器模式

通常客户类(clients of )通过类接口访问它提供服务有时现有类(existing )可以提供客户类功能需要但是它所提供接口不定是客户类所期望这是由于现有接口太详细或者缺乏详细或接口名称和客户类所查找区别等诸多区别原因导致  在这种情况下现有接口需要转化(convert)为客户类期望接口这样保证了对现有类重用如果不进行这样转化客户类就不能利用现有类所提供功能适配器模式(Ada... [阅读全文]

java代理模式:Java设计模式的计数代理模式

计数代理模式在客户对象服务提供者对象上思路方法前后执行诸如日志(logging)和计数(counting)系列附加功能时很有用计数代理模式建议把这些附加功能封装在个单独对象这个对象就是指计数代理对象而不是把这些附加功能实现放到服务提供者内部良好对象设计个特征就是对象要专注于提供特定功能换句话说理想对象不应该做各种不相干事情把诸如日志(logging)和计数(counting)等类似... [阅读全文]

java设计模式:Java设计模式的工厂思路方法模式(图)

、工厂思路方法(Factory Method)模式   工厂思路方法模式意义是定义个创建产品对象工厂接口将实际创建工作推迟到子类当中核心工厂类不再负责产品创建这样核心类成为个抽象工厂角色仅负责具体工厂子类必须实现接口这样进步抽象化好处是使得工厂思路方法模式可以使系统在不修改具体工厂角色情况下引进新产品 2、 工厂思路方法模式角色和结构  抽象工厂(Creator)角色:是工厂思路方法模式核心和... [阅读全文]

java设计模式:综述Java设计模式

自从J2EE出现以来就大大简化了在Java下企业级开发但是随着J2EE越来越普遍地被应用到各个领域中开发者们渐渐意识到需要种思路方法来标准化应用开发过程他们采用思路方法是标准化应用结构层在结构层通常封装了些独立于业务逻辑复杂技术以便在业务逻辑和底层架构的间建立起弱连接在本文中将会介绍些设计模式通过利用这些设计模式开发人员可以达到标准化和简化应用开发过程目   应用结构和J2EE  ... [阅读全文]

java开发工具:Java开发下的设计模式简单介绍说明

设计模式:个设计模式描述了个被证实可行方案这些方案非常普遍是具有完整定义最常用模式般模式有4个基本要素:模式名称(pattern name)、问题(problem)、解决方案(solution)、效果(consequences) 常见23种模式概述: 1) 抽象工厂模式(Abstract Factory):提供个创建系列相关或相互依赖对象接口而无需指定它们具体类 2) 适配器模式(Adapter)... [阅读全文]

java解释器:深入浅出基于Java的解释器设计模式

、引子  其实没有什么好例子引入解释器模式它描述了如何构成个简单语言解释器主要应用在使用面向对象语言开发编译器中;在实际应用中我们可能很少碰到去构造个语言文法情况  虽然你几乎用不到这个模式但是看看还是能受到定启发   2、定义和结构  解释器模式定义如下:定义语言文法并且建立个解释器来解释该语言中句子它属于类行为模式这里语言意思是使用规定格式和语法代码  在GOF书中指出:如果种特定类型问题发生... [阅读全文]

java设计模式:深入浅出基于Java的建造设计模式

、引子  前几天陪朋友去装机店攒了台电脑看着装机工在那里熟练装配着机器不禁想起来了培训时讲到建造模式作为装机工他们不用管你用CPU是Intel还是AMD也不管你显卡是2000千大元还是白送都能 3下 5除 2装配在起——台PC就诞生了!当然对于客户来说你也不知道太多有关PC组装细节这和建造模式是多么相像啊!  今天就来探讨下建造模式   2、定义和结构  GOF给建造模式定... [阅读全文]

java代理模式:深入浅出基于Java的代理设计模式

、引子  我们去科技市场为自己机器添加点奢侈配件很多DIYer都喜欢去找代理商在代理商那里拿到东西不仅质量有保证而且价格和售后服务上都会好很多客户通过代理商得到了自己想要东西而且还享受到了代理商额外服务;而生产厂商通过代理商将自己产品推广出去而且可以将些销售服务任务交给代理商来完成(当然代理商要和厂商来共同分担风险分配利润)这样自己就可以花更多心思在产品设计和生产上了  在美国任何企业产品要想拿到... [阅读全文]

flyweight:设计模式的Flyweight

Flyweight定义:  避免大量拥有相同内容小类开销(如耗费内存)使大家共享个类(元类).  为什么使用?  面向对象语言原则就是切都是对象但是如果真正使用起来有时对象数可能显得很庞大比如字处理软件Software如果以每个文字都作为个对象几千个字对象数就是几千无疑耗费内存那么我们还是要"求同存异"找出这些对象群共同点设计个元类封装可以被共享类另外还有些特性是取决于应用(context)是不可... [阅读全文]

什么叫设计模式:什么是设计模式

什么是模式这是个看上去简单但是又非常不简单问题个人所见过很多人学习模式理论已经很长时间了但是并不真正理解这点  模式理论基本思想其实起源于中国是中国文化固有思想你我我们中每个自幼受到中国思想熏陶人都自然具有这基本思想模式思想存在于中国文化各个角落包括哲学、法律医学兵法体育文学直到我们行为处事方式  模式思想长期以来不存在于西方研究方式中至今也不是西方文化主流思想因此学习模式切忌以西方式思路学习不然... [阅读全文]

java单例模式:Java模式设计的单例模式(一)

作为对象创建模式[GOF95] 单例模式确保某个类只有个例子而且自行例子化并向整个系统提供这个例子这个类称为单例类  注:本文乃阎宏博士Java和模式书第十 5章  引言  单例模式要点  单例单例  显然单例模式要点有 3个;是某各类只能有个例子; 2是它必须自行创建这个事例; 3是它必须自行向整个系统提供这个例子在下面对象图中有个"单例对象"而"客户甲"、"客户乙" 和"客户丙"是单例对象 3... [阅读全文]

java单例模式:Java模式设计的单例模式( 2)

在什么情况下使用单例模式  使用单例模式条件  使用单例模式有个很重要必要条件:  在个系统要求个类只有个例子时才应当使用单例模式反过来说如果个类可以有几个例子共存那么就没有必要使用单例类但是有经验读者可能会看到很多不当地使用单例模式例子可见做到上面这点并不容易下面就是些这样情况  例子  问:我个系统需要些"全程"变量学习了单例模式后我发现可以使用个单例类盛放所有"全程"变量请问这样做对吗?  ... [阅读全文]

java单例模式:Java模式设计的单例模式( 3)

个实用例子:属性管理器  什么是属性文件  这里给出个读取属性(properties) 文件单例类作为单例模式个实用例子属性文件如同老式视窗编程时.ini 文件用于存放系统配置信息配置信息在属性文件中以属性方式存放个属性就是两个串组成对子其中个串是键(key)另个串是这个键值(value)  大多数系统都有些配置常量这些常量如果是存储在内部那么每次修改这些常量都需要重新编译将这些常量放在配置文件中... [阅读全文]

java单例模式:Java模式设计的单例模式( 4)

不完全单例类  什么是不完全单例类  估计有些读者见过下面这样“不完全”单例类  代码清单10:“不完全”单例类package com.javapatterns.singleton.demos;public LazySingleton{private LazySingletonm_instance = null;/*** 公开构造子外界可以直接例... [阅读全文]

责任链模式:Java模式开发的责任链模式

从击鼓传花谈起  击鼓传花是种热闹而又紧张饮酒游戏在酒宴上宾客依次坐定位置由人击鼓击鼓地方和传花地方是分开以示公正开始击鼓时花束就开始依次传递鼓声落如果花束在某人手中则该人就得饮酒  假比说贾母、贾赦、贾政、贾宝玉和贾环是 5个参加击鼓传花游戏传花者他们组成个环链击鼓者将花传给贾母开始传花游戏花由贾母传给贾赦由贾赦传给贾政由贾政传给贾宝玉又由贾宝玉传给贾环由贾环传回给贾母如此往复(见下图)当鼓声停... [阅读全文]

state模式:设计模式的State

State定义: 区别状态区别行为;或者说每个状态有着相应行为  何时使用?  State模式在实际使用中比较多适合"状态切换".我们经常会使用If 进行状态切换如果针对状态这样判断切换反复出现我们就要联想到是否可以采取State模式了  不只是根据状态也有根据属性.如果某个对象属性区别对象行为就不样这点在数据库系统中出现频率比较高我们经常会在个数据表尾部加上property属性含义字段用以标... [阅读全文]

java设计模式:Java中的模式

世上直有个神话:设计可以并且应该独立于实现细节设计通常被看作是个抽象概念而实现是个代码具体例子如果我们坚信"设计是个富有创造性和目性活动:为某个目标而精心制定结构概念"个结构如果不能够介绍说明它环境或者不能和环境协作那么这个结构就不适合这目标环境中包括目标平台--语言、工具、库、中间件(middleware)等还有它功能性和非功能性单元  我们会认为在不知道地形布局时候设计房屋或者在不清楚使用道材... [阅读全文]

flyweight:Java设计模式研究的Flyweight模式

GOF:运用共享技术有效地支持大量细粒度对象  解释下概念:也就是说在个系统中如果有多个相同对象那么只共享份就可以了不必每个都去例子化个对象比如说(这里引用GOF书中例子)个文本系统每个字母定个对象那么大小写字母共就是52个那么就要定义52个对象如果有个1M文本那么字母是何其多如果每个字母都定义个对象那么内存早就爆了那么如果要是每个字母都共享个对象那么就大大节约了资源  在Flyweight模式中... [阅读全文]

java设计模式:Java设计模式的工厂思路方法模式

、工厂思路方法(Factory Method)模式  工厂思路方法模式意义是定义个创建产品对象工厂接口将实际创建工作推迟到子类当中核心工厂类不再负责产品创建这样核心类成为个抽象工厂角色仅负责具体工厂子类必须实现接口这样进步抽象化好处是使得工厂思路方法模式可以使系统在不修改具体工厂角色情况下引进新产品   2、 工厂思路方法模式角色和结构  抽象工厂(Creator)角色:是工厂思路方法模式核心和... [阅读全文]

什么是设计模式:到底什么是设计模式?

什么是模式这是个看上去简单但是又非常不简单问题个人所见过很多人学习模式理论已经很长时间了但是并不真正理解这点  模式理论基本思想其实起源于中国是中国文化固有思想你我我们中每个自幼受到中国思想熏陶人都自然具有这基本思想模式思想存在于中国文化各个角落包括哲学、法律医学兵法体育文学直到我们行为处事方式  模式思想长期以来不存在于西方研究方式中至今也不是西方文化主流思想因此学习模式切忌以西方式思路学习不然... [阅读全文]

java设计模式:Java设计模式的综述篇

自从J2EE出现以来就大大简化了在Java下企业级开发但是随着J2EE越来越普遍地被应用到各个领域中开发者们渐渐意识到需要种思路方法来标准化应用开发过程他们采用思路方法是标准化应用结构层在结构层通常封装了些独立于业务逻辑复杂技术以便在业务逻辑和底层架构的间建立起弱连接在个专题中将会介绍些设计模式通过利用这些设计模式开发人员可以达到标准化和简化应用开发过程目   应用结构和J2EE  J2EE是个很... [阅读全文]

java事务处理:JAVA设计模式的事务处理

事务处理是企业应用需要解决最主要问题的J2EE通过JTA提供了完整事务管理能力包括多个事务性资源管理能力但是大部分应用都是运行在单事务性资源的上(个数据库)他们并不需要全局性事务服务本地事务服务已然足够(比如JDBC事务管理)  本文并不讨论应该采用何种事务处理方式主要目是讨论如何更为优雅地设计事务服务仅以JDBC事务处理为例涉及到DAOFactory,Proxy,Decorator等模式概念请阅... [阅读全文]

java设计模式:Java设计模式学习心得体会

整个设计模式贯穿个原理:面对介面编程而不是面对实现(面向物件编程应该改爲面向介面编程)目标原则是:降低耦合增强灵活性  、创建模式  1. 设计模式的Factory(工厂思路方法和抽象工厂)  使用工厂模式就象使用样频繁.   2. 设计模式的Prototype(原型)  用原型例子指定创建物件种类並且通过拷贝这些原型创建新物件  3. 设计模式的Builder  汽车由车轮 方向盘 发动机很多部... [阅读全文]

设计模式:必须知道的设计模式

引言  设计模式是面向对象思想集大成GOF在其经典著作中整理总结了23种设计模式又可分为:创建型、结构型和行为型3个大类对于软件Software设计者来说般过程就是在熟练掌握语言背景基础上了解类库大致框架和常用和接口等然后多再在百般锤炼中提高对软件Software设计思想认识  软件Software设计者要清楚自己定位和方向味沉溺于技术细节思路是制约个人技术走向成熟毒药因此学习软件Software... [阅读全文]

设计模式:设计模式真的有使用的必要吗?

、 设计模式隐喻  武功套路是习武门径新手要招式地练习套路烂熟于心的后熟能生巧在实战的中即可见招拆招、运用自如——此时习武的人已从“新手”成长为“好手”“高手”则没有套路实战的中只有自然反应然而招式浑然天成、恰到好处似有似无、无中生有“高手”的上还有“高高手&rdqu... [阅读全文]

java代理模式:深入浅出基于Java的代理设计模式

、引子   我们去科技市场为自己机器添加点奢侈配件很多DIYer都喜欢去找代理商在代理商那里拿到东西不仅质量有保证而且价格和售后服务上都会好很多客户通过代理商得到了自己想要东西而且还享受到了代理商额外服务;而生产厂商通过代理商将自己产品推广出去而且可以将些销售服务任务交给代理商来完成(当然代理商要和厂商来共同分担风险分配利润)这样自己就可以花更多心思在产品设计和生产上了  在美国任何企业产品要想拿... [阅读全文]
1 共1条 分1页