全文预览

c#所有设计模式及源代码

上传者:随心@流浪 |  格式:docx  |  页数:15 |  大小:0KB

文档介绍
类图Р应用场景Р多个类只区别在表现行为不同,可以使用策略模式,在运行时动态选择具体要执行的 行为;Р需要在不同情况下使用不同的策略(算法),或者策略还可能在未来用其它方式来实现;Р对客户隐藏具体策略(算法)的实现细节,彼此完全独立。Р代码Р上温尔保免费索取所有模式的源代码。РРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРРР十四、 模板方法模式Р1、概念 模板方法模式定义一个操作中算法的骨架,以将一些步骤延缓到子类中实现。模板方法让子类重 新定义一个算法的某些步骤而无须改变算法的结构。Р抽象皮鞋РР调用者Р-是否为女鞋РР_Р+生产模板()Р1Р仝Р2、类图РРРРРР男皮鞋РР女皮鞋РР-是否为女鞋=trueРРРР3、使用场景Р多个子类有公有的方法,并且逻辑基本相同时;Р重要、复杂的算法,可以把核心算法设计为模板方法,周边的相关细节功能则由各个子 类实现;Р重构时,模板方法模式是一个经常使用的模式,把相同的代码抽取到父类中,然后通过 钩子函数(见“模板方法模式的扩展”)约束其行为。Р4、代码Р上温尔保免费索取所有模式的源代码。Р十五、 迭代器模式Р1、概念 迭代器模式提供一种方法可以访问聚合对象,而不用暴露这个对象的内部表示。迭代器模式是为 容器而生。Р2、类图Р皮鞋迭代实现Р〈〈interface〉〉Р皮鞋接口Р〈〈interface〉〉Р■皮鞋迭代接口 aР¥Р〈〈interface〉〉Р皮鞋容器接口Р+remove() +first() +hasNext() +nex t()РРРР皮鞋容器实现Р+迭代器()Р3、Р使用场景Р访问一个聚合对象的内容而无须暴露它的内部表示Р储分离,使得访问聚合对象时无须了解其内部实现细节;Рa)Р将聚合对象的访问与内部数据的存РРb)?需要为一个聚合对象提供多种遍历方式;

收藏

分享

举报
下载此文档