文章分类 -  设计模式

摘要:观察者模式:定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。 这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。 阅读全文
posted @ 2017-09-16 10:15 longdb 阅读(337) 评论(0) 推荐(0)
摘要:装饰模式:动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。 阅读全文
posted @ 2017-08-26 22:59 longdb 阅读(110) 评论(0) 推荐(0)
摘要:类图: 阅读全文
posted @ 2017-07-23 15:46 longdb 阅读(111) 评论(0) 推荐(0)
摘要:原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 (其实就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节。) UML结构图: 阅读全文
posted @ 2017-07-22 23:34 longdb 阅读(104) 评论(0) 推荐(0)
摘要:状态模式:当一个对象的内在状态改变时允许改变其行为,这个对象开起来像是改变了其类。 结构图: 阅读全文
posted @ 2017-07-08 20:50 longdb 阅读(139) 评论(0) 推荐(0)
摘要:享元模式:应用共享技术有效支持大量细粒度的对象。 阅读全文
posted @ 2017-07-01 14:32 longdb 阅读(90) 评论(0) 推荐(0)
摘要:职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。 将这个对象连接成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 结构图: 实现代码: 结果: 阅读全文
posted @ 2017-06-24 16:24 longdb 阅读(137) 评论(0) 推荐(0)
摘要:1 namespace Adapter 2 { 3 class Target 4 { 5 public Target() 6 { 7 var str = "test"; 8 Console.WriteLine(str); 9 } 10 public virtual void Request() 11 { 12 Console.WriteLine("普通请求!"); 1... 阅读全文
posted @ 2017-06-18 12:05 longdb 阅读(98) 评论(0) 推荐(0)
摘要:组合模式:将对象组合成树形结构以表示’部分-整体‘的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 阅读全文
posted @ 2017-06-12 20:19 longdb 阅读(116) 评论(0) 推荐(0)
摘要:桥接模式:将抽象部分与它的实现部分分离,使它们都可以独立变化。 合成/聚合复用原则(CARP),尽量使用合成/聚合,尽量不要使用类继承。 聚合:表示一种弱的"拥有"关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分;合成则是一种强的"拥有"关系,体现了严格的部分与整体的关系,部分和整体的 阅读全文
posted @ 2017-06-10 12:52 longdb 阅读(287) 评论(0) 推荐(0)
摘要:《大话设计模式》记录。 阅读全文
posted @ 2017-06-09 23:39 longdb 阅读(75) 评论(0) 推荐(0)