上一页 1 ··· 10 11 12 13 14
  2011年1月28日
摘要: 代理模式定义:为另一个对象提供一个替身或者占位符以控制对这个对象的访问。使用代理模式创建代表对象,让代表对象控制某对象的访问,被代理的对象可以是远程的对象,创建开销大的对象或需要安全控制的对象。 阅读全文
posted @ 2011-01-28 11:08 jackdesk 阅读(91) 评论(0) 推荐(0) 编辑
  2011年1月27日
摘要: 网站性能越来越差怎么办?来源于http://blog.csdn.net/21aspnet/archive/2009/01/05/3712984.aspx新的一年,你的老板或客户,是否曾和你抱怨公司的网站性能愈来愈差?网站大家都会写,自从有了 Visual Studio 之后,连你家楼下的正妹小喵和隔壁的王大婶都会写 ASP.NET。但同样的一个画面,背后的性能却可能是天差地远,更惶论多人同时上线的企业网站,而程序员的身价也因此有所差别。本帖提供一些改善网站性能的点子,从硬件、软件、程序技巧的层面都有,也欢迎大家分享自己的经验或秘技。(1) 重新调整或重新设计 DB schema、索引 (ind 阅读全文
posted @ 2011-01-27 15:35 jackdesk 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像改变了他的类。以状态模式而言,我们将一群行为封装在状态对象中,context的行为为随时可委托到那些状态对象中的一个。随着时间的流逝,当前状态在状态对象集合中游走改变,以反映出context内部的状态,因此,context的行为也会跟着改变。但是context的客户对状态了解不多,甚至根本是浑然不知。以策略模式而言,客户通常主动指定context所要组合的策略对象是哪一个。现在,固然策略模式让我们具体弹性,能够在运行时改变策略,但对于某个context对象,通常都只有一个最适当的策略对象。 阅读全文
posted @ 2011-01-27 15:15 jackdesk 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 迭代器模式就是常见的集合中的Itrerator。迭代器模式定义:提供一种方法顺序访问一个集合对象中的各个元素,有不暴露其内部是如何表示的。可以用来处理集合之间不同类型数据的管理代码如下[代码]public interface Iterator { object Next(); bool HasNext(); } //定义菜单接口 public interface Menu { Iterator CreateIterator(); } //定义菜单属性类 public class MenuItem { string name; string description; bool isVegetar 阅读全文
posted @ 2011-01-27 10:50 jackdesk 阅读(128) 评论(0) 推荐(0) 编辑
  2011年1月26日
摘要: 模块方法模式主要是用在超类与子类之间关系之中。模块方法模式定义:在一个方法中定义一个算法的骨架,而将以一些方法实现推迟到子类中。模块方法使得子类可以不改变算法结构的情况下,重新定义算法中的某些方法。具体的说:模板就是一个方法,这个方法将算法定义成一组步骤,其中任何步骤都可以是抽象的,由子类负责实现。这可以确保算法的结构保持不变,同事由子类提供部分方法实现。[代码] public abstract class CoffeeTeaWithHook { public string PrepareRecipe() { StringBuilder sb = new StringBuilder(); sb 阅读全文
posted @ 2011-01-26 16:32 jackdesk 阅读(638) 评论(0) 推荐(0) 编辑
摘要: 外观模式主要是用来简化统一个很大的接口或者一群复杂的接口。外观模式定义:提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统很容易使用.(深入浅出设计模式)外观模式不只是简化了接口,也将客户从组件的子系统中解耦。外观模式实现代码:[代码] public class WatchTv { string channel; public WatchTv(string channel) { this.channel = channel; } public string TvOn() { return "Tv is on " + channel; } public strin 阅读全文
posted @ 2011-01-26 14:06 jackdesk 阅读(749) 评论(0) 推荐(0) 编辑
摘要: 适配器模式就相当于一个翻译,来处理两个人语言之间的障碍。下面文字来源于深入浅出设计模式,进一步了解什么是适配器模假设有一个系统,你希望他能和一个新的厂商类库搭配使用起来,但是新的厂商所设计的接口不同于旧常桑的接口,你不想改变现有的代码,解决这个问题(而且你也不能改变厂商的代码)。所以该怎么办呢这个嘛,你可以写一个类,将新厂商的 接口转接成你所期望的接口这个适配器工作起来就如同一个中间商,他将客户所发出的请求转换成厂商类能够理解的请求实现代码:现有系统代码:[代码] public interface Duck { string Quack(); string Fly(); } //绿头鸭子类 p 阅读全文
posted @ 2011-01-26 12:47 jackdesk 阅读(127) 评论(0) 推荐(0) 编辑
  2011年1月25日
摘要: 命令模式就是通过封装方法调用,我们可以把类装成形,调用此类的对象,我们不需要关心此对象里面是如何运作的代码如下简单的命令模式:[代码] //创建灯开关类 public class Light { string location; public Light(string location) { this.location = location; } public string On() { return location + " is on"; } public string Off() { return location + " is off"; } } //创建接口命令 public int 阅读全文
posted @ 2011-01-25 16:07 jackdesk 阅读(153) 评论(0) 推荐(1) 编辑
摘要: 延迟实例做法,性能要求不高的程序代码:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--publicclassmyClass{privatestaticmyClassmycl;privatemyClass(){}publicstaticmyClassgetInstance(){if(mycl==null){mycl=newmyClass();}returnmycl;}publicvoidwritesingleton(){Console.Write 阅读全文
posted @ 2011-01-25 10:44 jackdesk 阅读(166) 评论(0) 推荐(0) 编辑
  2011年1月24日
摘要: 首先安装AnkhSvn成功后,在安装Subversion成功后,建立一个文件夹,用来存放项目文件例如名称:“svn_repository”然后使用tortosieSVN对文件建立 createrepository here最后建立服务,进入dos命令使用命令行:sc create svnservice binpath= "\"E:\Program Files\Subversion\bin\svnserve.exe\" --service -r E:\svn_repository" displayname= "Subversion Reposit 阅读全文
posted @ 2011-01-24 16:52 jackdesk 阅读(457) 评论(0) 推荐(2) 编辑
上一页 1 ··· 10 11 12 13 14