创建型设计模式,c# 设计模式(二)结构型

名称 Adapter 结构 意图 将一个类的接口转换成客户希望的另外一个接口。A d a p t e r 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 适用性 你想使用一个已经存在的类,而它的接口不符合你的需求。 你想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。 (仅适用于对象A d a p t e r )你想使用一... [阅读全文]

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

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

设计模式,我看设计模式

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

安全模式:IoC模式

1引言 面向对象的思想已经深入人心,但是要利用面向对象的思想开发出优秀的应用程序却不是一件容易的事情。正是基于面向对象的思想,人们对各种应用程序进行了大量的分析、总结、归纳出了设计模式。Alexanders给出模式的经典定义是:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,你可以无数次地使用那些已有的解决方案,无需再重复相同的工作[2]。... [阅读全文]

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

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

flyweight:设计模式的Flyweight

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

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

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

state模式:设计模式的State

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

ejb设计模式:设计模式在EJB中的应用

什么是设计模式  设计模式是套被反复使用、多数人知晓、经过分类编目、代码设计经验整理总结使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性  毫无疑问设计模式于己于他人于系统都是多赢设计模式使代码编制真正工程化设计模式是软件Software工程基石如同大厦块块砖石样  GoF“设计模式”是第次将设计模式提升到理论高度并将的规范标准化本书提出了23种基本设计... [阅读全文]

设计模式:活用设计模式

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

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

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

安全模式的作用:设计模式的作用

有软件Software开发经验朋友应该有这样体会:构建个优秀系统最困难的处不在于编码(coding)而是在早期做出设计(design)上决定设计是软件Software开发生命周期中关键阶段好设计能产生好产品而不当设计则会影响最终产品质量设计重要性已经深入人心这从人们热烈讨论和研究设计模式就能看出来设计模式是拥有多年开发设计经验人给我们经验传承它是作为专家建议而引入它背后真正威力是其对真实世界抽象如... [阅读全文]

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

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

设计模式大揭密

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

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

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

设计模式:简单实现设计模式

下面这些设计模式实现都是些简单举例实现如果你希望更稳固更方便实现请自己修改我以Gof书作为蓝本实现里面可以被抽象设计模式里面使用Loki, Boost, STL些东西如果有疑问话请翻阅相关书籍 //***************************************************************************Abstra... [阅读全文]

设计模式:简话设计模式

简话设计模式 作者:杨宁(来自grapecity) 第章 引言 1. 本文不适合…本文不适合想通过本文来装修房子读者;本文不适合面向对象编程高手会浪费你时间如果你愿意抽出时间来阅读本文并提出宝贵建议非常感谢!什么?你没有听说过设计模式?那你也敢称高手?2. 本文适合…如果你对面向对象编程感兴趣而... [阅读全文]

设计模式:设计模式·转

关于要掌握的设计模式 一、为什么使用设计模式 对任何设计都可以凭主观(对设计很难做出客观评价)判断得出它是一个好的设计,还是一个坏的设计。使用设计模式是为了避免坏的设计。 目前拙劣设计的症状: · 僵化性(Rigidity):设计难以改变 · 脆弱性(Fragility):设计易于遭到破坏 · 牢固性(Immobility):设计难以重用 ... [阅读全文]

翻译,设计模式之观察者Observer

转自博客园的http://www.cnblogs.com/Marvel/archive/2008/08/29/1279258.html设计模式涵义  设计模式描述了软件设计过程中某一类常见问题的一般性的解决方案。面向对象设计模式描述了面向对象设计过程中、特定场景下、类与相互通信的对象之间常见的组织关系。观察者模式定义  Define a one-to-many dependency between... [阅读全文]

什么是设计模式?

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

详述.NET设计模式:工厂方法模式(Factory Method)

CrazyCoder简述:设计模式一个非常重要的环节就是工厂方法模式,有效的利用会很容易的更改有效的开发和运作,用最少的时间成本来换取最大的收益 Factory Method模式是设计模式中应用最为广泛的模式,通过本文,相信读者已经对它有了一定的认识。然而我们要明确的是:在面向对象的编程中,对象的创建工作 非常简单,对象的创建时机却很重要。Factory Method要解决的就是对象的创建时机问题... [阅读全文]

详述.NET设计模式之建造者模式(Builder Pattern)(1)

概述 在软件系统中,有时候面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的 算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法确相对稳定。如何应对这种变化?如何提供一种“封装 机制”来隔离出“复杂对象的各个部分”的变化,从而保持系统中的“稳定构建... [阅读全文]

详述.NET设计模式之抽象工厂模式(Abstract Factory)(3)

接上篇http://www.crazycoder.cn/DotNet/Article11075.html 为系统增加抽象工厂方法 很显然,前面的解决方案带来了一个副作用:就是系统不但增加了新的类Factory,而且当系统移植时,移植工作仅仅是转移到Factory类上,工作量 并没有任何缩减,而且还是要修改系统的源码。 从Factory类在系统移植时修改的内容我们可以看出: 实际上它是专属于... [阅读全文]

详述.NET设计模式之抽象工厂模式(Abstract Factory)(2)

接上篇 http://www.crazycoder.cn/DotNet/Article11074.html结果我们发现:每当Softo系统移植的时候,就抛弃原来的类。现在,如果中国联想集团要购买该系统,我们不得不再次抛弃AmericanTax,AmericanBonus,修改回原来的业务规则。 一个可以立即想到的做法就是在系统中保留所有业务规则模型,即保留中国和美国企业工资运算规则。 ... [阅读全文]

详述.NET设计模式之抽象工厂模式(Abstract Factory)(2)

接上篇 http://www.crazycoder.cn/DotNet/Article11074.html结果我们发现:每当Softo系统移植的时候,就抛弃原来的类。现在,如果中国联想集团要购买该系统,我们不得不再次抛弃AmericanTax,AmericanBonus,修改回原来的业务规则。 一个可以立即想到的做法就是在系统中保留所有业务规则模型,即保留中国和美国企业工资运算规则。 ... [阅读全文]

详述.NET设计模式:单件模式(2)

由于 Singleton 实例被私有静态成员变量引用,因此在类首次被对 Instance 属性的调用所引用之前,不会发生实例化。 这种方法唯一的潜在缺点是,您对实例化机制的控制权较少。在 Design Patterns 形式中,您能够在实例化之前使用非默认的构造函数或执行其他任务。由于在此解决方案中由 .NET Framework 负责执行初始化,因此您没有这些选项。在大多数情况下,静... [阅读全文]

详述.NET设计模式:单件模式(1)

大话设计模式,什么是设计模式,涉及模式系列文章之一,单件模式概述 Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问点。这就提出了一个问题:如何绕过常规的构造器,提供一种机制来保证一个类 只有一个实例?客户程序在调用某一个类时,它是不会考虑这个类是否只能有一个实例等问题的,所以,这应该是类设计者的责任,而不是类使用者的责任。 从另一个角度来说,Singleto... [阅读全文]

详解抽象工厂分析,C#抽象工厂模式的实现方法

备注,设计模式其实是双刃剑,可以很方便的使我们采用代码生成的方式来做项目,但是性能饼不是很好,不建议在web2.0中使用   利用设计模式可以使我们的代码更灵活,更容易扩展,更容易维护。各种面向对象的程序设计语言都提供了基本相同的机制:比如类、继承、派生、多态等等。但是又有各自的特色,C# 中的反射机制便是一个很重要的工具,好好地利用就可以在实际中发挥很大的作用。  我们来看一个例子:  我的程序... [阅读全文]
1 共1条 分1页