12 2010 档案
摘要:1. .NetFramework包含CLR(公共语言运行库)和FCL(类库:Framework Class Library),所以运行开发的程序需要安装.Netframwork2.源代码---生成多个托管模块(中间语言IL和元数据)---生成一个程序集又叫组件(dll) 源代码经过编译器编译后生成多个托管模块,多个托管模块和一些资源文件经过编译器生成一个程序集(组件)托管模块由中间语言(托管代码)和元数据构成,元数据由“定义类型和成员”表和“引用类型和成员”表构成 程序集中包含了一张叫做“清单”的模块,它记录了构成程序集模块构成的信息包括资源文件。 其中程序集还包含一些关于需要引用自己的信
阅读全文
posted @ 2010-12-13 22:36
yu_liantao
摘要:模式分组: 创建型:简单工厂模式,工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式 抽象工厂:提供一个创建一系列或相关依赖对象接口,而无需指定他们具体的类。 建造者:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创造不同的表示。工厂方法:定义一个创建对象的接口,让子类决定实例化哪一个类,使得创建延迟到子类。 原型:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新对象。 单例:保证一个类只有一个实例,并且提供一个访问它的全局访问点。 优缺点:抽象工厂比较臃肿;建造者把建造过程影藏,一个请求完成一个产品,实现了高内聚低耦合,但是有很少的产品是相同的建造过程; 结构型:
阅读全文
posted @ 2010-12-04 22:29
yu_liantao
摘要:本内容参考大话设计模式记录对象:一切事物皆对象。类:对对象进行的抽象。实例:类的一个具体实体。方法重载:方法名相同但是参数类型或者个数不同的方法。面向对象的三大特性:继承,封装,多态继承:子类继承父类后具有父类的保护和公有的一些方法,属性等并且能扩充自己。对于父类的构造函数只能调用不能继承。当对象与对象的关系是is-a时候用继承,当关系式has-a我们应该用组合或者聚合(桥接模式)。封装:一个类在...
阅读全文
posted @ 2010-12-04 17:07
yu_liantao
摘要:1.主要用在数据结构比较稳定,但是算法比较灵活的系统中。因为这样我们增加一个新的算法只需要改一点代码就OK了。注意的一点就是它用到了双分派技术。在请求的时候需要来回2次的相互验证。2.UML图解3.代码展示namespace 访问者模式{ class Program { static void Main(string[] args) { ObjectStructure o = new Object...
阅读全文
posted @ 2010-12-02 00:35
yu_liantao
摘要:1.把一种特定的语言或者类型,定义它的文法的一种表示,并把它解释出来。这种模式我们开发系统很少用到,基本上是语言级别的用的比较多。所以这里就不作详细解释。2.UML图解3.代码展示namespace 解释器模式{ class Program { static void Main(string[] args) { Context context = new Context(); IList<A...
阅读全文
posted @ 2010-12-02 00:14
yu_liantao
摘要:1.个人感觉它就是一个已经创建好的对象的重复利用,它是直接把已经创建好的对象放在哈希表中,下次读取的时候找这个哈希表的键来找到这个对象,然后调用它,我个人比较喜欢把一个已经创建好的对象放在缓存中,这样以后就可以直接读取缓存。但是这是一个系列这里也简单的聊聊。2.UML图解3.代码展示namespace 享元模式{ class Program { static void Main(string[] ...
阅读全文
posted @ 2010-12-02 00:09
yu_liantao
摘要:1.它相当于把一组在某个程度上具有相同的对象组织在它的内部结构中,由它来统一调遣,这样就解决了类与类之间的互相调用,把复杂的逻辑转化到中介者去实现。它需要知道所有的对象的存在,当某个对象在发出某个请求的时候,从表面上看是它的内部函数在处理,其实并不是它在处理,而是它注册的中介者对象在对请求分析后决定要哪个对象去处理。因此我们在创建对象的时候要具体的中介者,这样这个对象就被中介者收录于自己的内部对象...
阅读全文
posted @ 2010-12-01 23:59
yu_liantao
摘要:1.它主要解决的问题是让多个对象都有机会处理请求,从而避免请求的发送者和请求的接受者的耦合关系。将处理请求的对象连成一个链,请求按照这个链一次传递,知道请求被处理为止。2.优点是:处理对象链很容易修改,只需要处理对象记住下一个处理对象即可。3.UML图解4.代码展示namespace 职责链模式{ class Program { static void Main(string[] args) { ...
阅读全文
posted @ 2010-12-01 23:39
yu_liantao
摘要:1.命令模式主要是解决把请求一个操作的对象与知道怎么执行一个操作的对象分离。它是把一个请求封装成一个对象,从而使你可用不同的请求对客户端进行参数化。2.优点:能容易设计一个命令队列;允许接受请求的一方决定是否请求;可以把请求写入一个日志中;可以对请求进行撤销和重做;3.UML图解4.代码展示namespace 命令模式{ class Program { static void Main(strin...
阅读全文
posted @ 2010-12-01 23:08
yu_liantao
摘要:1.个人感觉桥接模式就是把其他对象组合到自己的类中,以此来增加类的功能,这样的好处是丰富了类的功能,并且很多功能可以在其他类中写好,只是引用一下这个类即相当于自己的功能。它表现在一个类对另外一个类的拥有。其中又分弱包含和强包含,对应的就是聚合和组合。2.它的适用背景是当一个系统可以从多个角度分类的时候,我们可以考虑用桥接模式,把抽象与它的实现分离。3.UML图解4.代码展示namespace 桥接...
阅读全文
posted @ 2010-12-01 22:31
yu_liantao
摘要:1.个人感觉就是只能为一个类创建一个对象的场合使用2.代码展示namespace 单例模式{ class Program { static void Main(string[] args) { Singleton s1 = Singleton.GetInstance(); Singleton s2 = Singleton.GetInstance(); if (s1 == s2) { Console...
阅读全文
posted @ 2010-12-01 00:14
yu_liantao

浙公网安备 33010602011771号