MyException - 我的异常网
当前位置:我的异常网» 设计模式 » 具体设计形式的总结

具体设计形式的总结

www.MyException.Cn  网友分享于:2013-02-20  浏览:3次
具体设计模式的总结

引言

       之前本想着自己把每一个设计模式都总结出来,写成博客共享给大家,相应的笔记总结写了,但是拿不出手,写的很不好,所以,就没有继续发表这个系列的博客,本篇博客是自己对于每个具体设计模式的简要总结,希望没有误导你。

概述

       类的封装设计仅仅是我们编程的第一步,对类进行对象实例化,并在其数据成员上实施操作才是我们完成现实人物的根本。虽然类的封装设计是编程的第一步,但是后者是它的指导。设计模式是类的封装设计的方法,所以,我们在学习设计模式的时候应该和“后者”联系起来。

创建型模式

       概述

            创建型模式具体包括:工厂模式(简单工厂模式、工厂方法模式和抽象工厂模式)、单例模式、原型模式和创建者模式。创建型模式与对象的创建有关,在这里我们应该以“对象的创建”为基准点来学习具体的设计模式。

       具体模式

              工厂模式

                      对于不稳定的对象,即:该块需求易变,且变得时候会影响该对象的情况,使用工厂模式,具体运用那种工厂模式,还要看具体情况(变的程度等等)。

              创建者模式

                      对于稳定的对象,但是创建比较复杂的对象,即:该块需求不宜变,该对象的创建可以通过其他对象的组合完成的情况,使用创建者(生成器)模式。

              原型模式

                      对于稳定而同类大量的对象,即:该块需求不宜改变,且要求创建的对象都是同类的对象的情况,使用原型模式

             单例模式

                      对于稳定而唯一的对象,即:该块需求不宜改变,且要求只能创建一个对象的情况,使用单例模式。

结构型模式

       概述

               结构型模式具体包括:外观模式、装饰模式、代理模式、适配器模式、桥接模式、组合模式和享元模式。在学习结构型模式时,我们应该以“结构”两字为基准点来学习,结构具体变现在两个方面:块和对接

       具体模式

               外观模式

                      对接。对于已存在的多个块使用不方便的情况,我们可以把多个块的对接由原来的多个对接合成一个对接。

              装饰模式

                      块。应用于块内功能的增加,在一定条件下比继承要好的多。

              代理模式

                        对接。增加对接处的功能,达到隐藏了真正块的功能。

             适配器模式

                      对接。把原来的对接变成更加方便的对接。

             桥接模式

                      块。应用于块内多对多的变化,即:一个块内多个分支变化,每个分支多个具体变化,分支和变化存在着大量重复,此时可以运用桥接模式。

             组合模式

                      块。块内表现出层次性,且层与层的结构大致相同,即:实例后结构类似树(数据结构),这种情况可以采用组合模式。

              享元模式

                      块。创建对象多时,应尽量减少所创建对象的大小,在块内应提出内蕴状态。内方法和属性的分离,即:把之前的类的方法和属性进行分离,这样创建大量该对象时,可以共用一个方法对象。

 

行为型模式

       概述

               行为型模式具体包括:观察者模式、。行为型模式主要的是在“行为”两个字,为达到这种行为而采用的方法。

       具体模式

               观察者模式

                      实现一对多的目的。

               策略模式

                      把复杂算法的方法拆分为简单算法的方法。

               模板方法模式

                      公共方法应该提到父类作为模板。

               命令模式

                      方法中的请求和实现要分开。

               迭代器模式

                      提供一种可以访问聚合对象各个元素,且不暴露该对象内部的表示的方法。

               中介者模式

                      把一对多变成了一对一再对多,通过一对一最终达到一对多的目的。

               备忘录模式

                           为保存一个对象的内部状态所提供的方法。

                   解释器模式

                            为使用频率高的复杂的功能提供一个简单的应用的句子。

                   状态模式

                            实现将一个复杂的状态判断方法转移成多个。           

                   职责链模式

                            提供一种方法,是对象和对象之间可以建立一条链。

                   访问者模式

                            为应对做一件事的步骤不变,但每步的具体内部千查万别的情况提供方法

总结

    每个具体模式都简短的概括了一下,看的时候要联系一些具体的情况,具体的设计模式都是针对具体的某种情况,另外,学习设计模式时,应该想一想数据库的三级模式和二级映射。

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有