MaoBisheng

Asp.Net(C#) & SQL & Oracle
posts - 56, comments - 35, trackbacks - 2, articles - 0
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

08 2008 档案

     摘要: GOF设计模式之模板方法(TemplateMethod)模式(行为型模式):很简单,但很常用的一种设计模式,在面向对象系统中有着大量的应用。它用最简洁的机制(虚函数的多态性)为很多应用程序框架提供了灵活的扩展点,是代码复用方面的基本实现结构。  阅读全文

posted @ 2008-08-31 15:02 毛必盛 阅读(45) | 评论 (0)  编辑 |

     摘要: "Is-a”与"Has-a"的关系。。。 "Is-a”代表类之间或类与接口的继承关系,"Has-a"代表的是对象和他成员的从属关系。  阅读全文

posted @ 2008-08-31 09:02 毛必盛 阅读(135) | 评论 (1)  编辑 |

     摘要: 结构型模式,顾名思义讨论的是类和对象的结构,它采用继承机制来组合接口或实现(类结构型模式),或者通过组合一些对象,从而实现新的功能(对象结构型模式)。这些结构型模式,它们在某些方面具有很大的相似性,仔细推敲,侧重点却各有不同。本文试图对这几种结构型模式做一个简单的小结。  阅读全文

posted @ 2008-08-26 19:26 毛必盛 阅读(42) | 评论 (0)  编辑 |

     摘要: GOF设计模式之代理(Proxy)模式(结构型模式):人们对于复杂系统的软件系统常常有一种处理手法,即增加一层间接层,从而对系统获得一种更为灵活、满足特定需求的解决方案。同样,在软件系统中,有些对象有时候由于跨越网络或者其他的障碍,而不能够或者不想直接访问另一个对象,这时候可以在客户程序和目标对象之间增加一层中间层。。。。  阅读全文

posted @ 2008-08-24 10:09 毛必盛 阅读(131) | 评论 (3)  编辑 |

     摘要: 我们在工作的过程中,经常遇到如下的需求: 用一个Map存放常用的Object,这个Map的并发读取的频率很高,而写入的频率很低,一般只在初始化、或重新装装载的时候写入。读写冲突虽然很少发生,不过一旦发生,Map的内部结构就可能乱掉,所以,我们不得不为Map加上同步锁。 我们可以采用Copy On Write的机制,来加强Map的读取速度。 Copy On Write是这样一种机制。当我们读取共享数据的时候,直接读取,不需要同步。当我们修改数据的时候,我们就把当前数据Copy一份副本,然后在这个副本上进行修改,完成之后,再用修改后的副本,替换掉原来的数据。这种方法就叫做Copy On Write。   阅读全文

posted @ 2008-08-23 09:42 毛必盛 阅读(104) | 评论 (1)  编辑 |

     摘要: GOF设计模式之享元(Flyweight)模式(结构型模式):面向对象很好的解决了系统抽象性的问题,同时在大多数情况下,也不会损及系统的性能。但是,在某些特殊的应用中下,由于对象的数量太大,采用面向对象会给系统带来难以承受的内存开销。比如图形应用中的图元等对象、文字处理应用中的字符对象等。。。  阅读全文

posted @ 2008-08-22 21:47 毛必盛 阅读(64) | 评论 (0)  编辑 |

     摘要: GOF设计模式之外观(Facade)模式(结构型模式):为子系统中的一组接口提供一个一致的界面。。。  阅读全文

posted @ 2008-08-18 20:53 毛必盛 阅读(59) | 评论 (0)  编辑 |

     摘要: GOF设计模式之装饰模式(结构性模式):在某些情况下我们可能会“过度地使用继承来扩展对象的功能”,由于继承为类型引入的静态(编译时)特质,使得这种扩展方式缺乏灵活性;并且随着子类的增多(扩展功能的增多),各种子类的组合(扩展功能的组合)会导致更多子类的膨胀(多继承)。如何动态地实现对“对象功能的扩展”,装饰模式就增加功能而言,比生成子类更为灵活。   阅读全文

posted @ 2008-08-16 16:21 毛必盛 阅读(68) | 评论 (1)  编辑 |

     摘要: The Beauty of Software——Robert C. Martin's foreword for Agile Software Development Chinese Version  阅读全文

posted @ 2008-08-14 19:36 毛必盛 阅读(40) | 评论 (0)  编辑 |

     摘要: GOF设计模式之组合模式(结构型模式):采用树形结构来实现普遍存在的对象容器,从而将“一对多”的关系转化为“一对一”的关系,使得客户代码可以一致地处理对象和对象容器,无需关心处理的是单个的对象,还是组合的对象容器。  阅读全文

posted @ 2008-08-14 18:59 毛必盛 阅读(55) | 评论 (0)  编辑 |

     摘要: GOF设计模式之Bridge桥接模式(结构型模式):将抽象部分与实现部分分离(将一个事物中多个维度的变化分离),使它们都可以独立地变化。。。  阅读全文

posted @ 2008-08-11 19:31 毛必盛 阅读(35) | 评论 (0)  编辑 |

     摘要: GOF设计模式之适配器模式(结构型模式),是在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口。生活中的适配器例子,比如两角插座与三角插座的转换,USB接口的转换等都是常见的适配器,同样,在软件系统中由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。这就需要用到适配器模式。。。。  阅读全文

posted @ 2008-08-09 19:09 毛必盛 阅读(35) | 评论 (0)  编辑 |

     摘要: 学完GOF的5个创建型模式了,稀里糊涂的,没有个明确的概念,也该总结总结,于是乎上网搜搜“创建型模式”,发现好文章一篇。。。出处:http://terrylee.cnblogs.com,转载过来,以便后续学习。。。   阅读全文

posted @ 2008-08-07 20:20 毛必盛 阅读(43) | 评论 (0)  编辑 |

     摘要: 设计模式之创建模式之原型模式——通过拷贝一个现有对象生成新对象的。   阅读全文

posted @ 2008-08-06 19:11 毛必盛 阅读(38) | 评论 (0)  编辑 |

     摘要: 摘要: 介绍GoF23之FactoryMethod的意图、动因、原理与以计算器的设计为例如何用C#语言实现。  阅读全文

posted @ 2008-08-03 16:40 毛必盛 阅读(37) | 评论 (0)  编辑 |

     摘要: 运算符重载:复数的四则运算。。。 四月份接触到一个题:写一个实例实现复数的四则运算,那时候的我对面向对象的东西还刚刚入门,三月份第一次看C#高级编程那本书时,只是挑了一些能看懂的看,运算符重载那章跳过了,如今看第二遍的时候,一章一章过,明白了什么是运算符重载了,原来这么。。。。  阅读全文

posted @ 2008-08-02 07:33 毛必盛 阅读(581) | 评论 (0)  编辑 |