读书人

设计形式概述

发布时间: 2012-10-25 10:58:58 作者: rapoo

设计模式概述

程式设计是思维具体化的一种方式,是思考如何解决问题的过程。而设计模式就是在解决问题的过程中,一些良好思路的经验集成。?
设计模式共有23种。?
创建型模式?
? 用于创建类的实例。但是和通过new来创建实例不同,这些模式提供了更加灵活的方式,是程序能够根据特定的情况创建特定的类。?

? 1、单件模式(Single Pattern)?
? 根据单一模式实现的类只允许有一个是类,并且提供了一个全局指针来引用该实例。?
? 2、抽象工厂模式(Abstract Factory)?
? 根据提供的数据生成一组类中某一个类的实例,而这一组类有一个公共的抽象父类。只不过它定义的是一个接口。?
? 3、建造者模式(Builder Pattern)?
? 将一个复杂对象的构造过程和它的表现层分离开来,这样类就可以根据不同情况展现出不同的表现方式。?
? 4、工厂方法(Factory Method)?
? 根据工厂模式实现的类可以根据提供的数据生成一组类中某一个类的实例,而这一组类有一个公共的抽象父类?
? 5、原型模式(Protype Pattern)?
? 通过对类的实例进行拷贝来创建新的实例。?

结构型模式?
? 结构类型的模式将类和对象组合起来,以构成更加复杂的结构。它又被划分为类模式和对象模式。类模式和对象模式之间的区别在于类模式通过继承关系来提供有效的接口;而类模式通过对象合成或将对象包含在其它对象中的方式构成更加复杂的结构。?

? 6、适配器模式(Adapter Pattern)?
? 可以将一个类的接口和另一个类的接口匹配起来。?
? 7、桥接模式(Bridge Pattern)?
? 对客户端程序提供一个固定的接口,但是允许开发人员变化实际的实现类。这样开发人员就可以将接口是具体的实现类分离开来。?
? 8、装饰模式—ecorator Pattern)?
? 通过装饰模式,开发人员可以在运行时将特定的功能绑定在对象上。?
? 9、组合模式(Composite Pattern)?
? 组合模式可以将多个对象进行复合,其中的每个对象可以是简单对象,也可以是复合对象。?
? 10、外观模式(Fa?ade Pattern)?
? 外观模式将复杂的类层次结构组织起来,通过一个简单的接口来获得层次结构中的数据。?
? 11、享元模式(Flyweight Pattern)?
? 通过将对象中的一部分数据保存在对象外,在调用对象中的方法时再将这些数据传回对象。这样做可以减少大量比较简单的对象占用的空间。?
? 12、代理模式(Proxy Pattern)?
? 利用一个简单的对象替代一个复杂的对象,当复杂对象在需要的时候才会被加载到系统中,这样可以节约系统资源,提高系统的响应速度。?

行为型模式?
? 行为类型的模式主要是那些处理对象之间通讯的模式,?
? 13、模版方法模式(Template Method)?
? 模板模式提供了对算法的抽象定义。?
? 14、命令模式(Command Pattern)?
? 命令模式将请求传递给特定的对象,这样客户端即使在不知道服务器端如何处理请求的情况下也可以发送请求?
? 15、迭代器模式(Iterator Pattern)?
? 迭代模式在不知道数据的内部表现形式的前提下,通过标准的接口来遍历数据集合中的数据。?
? 16、观察者模式(Oberver Pattern)?
? 观察者模式可以在发生变化时将变化通知多个类。?
? 17、中介者模式(Mediator Pattern)?
? 中介模式可以通过一个中间类来控制若干个类之间的通讯,并且这些类相互之间不需要了解对方的信息?
? 18、备忘录模式(Memento Pattern)?
? 备忘录模式可以在不破坏对象封装性的前提下保存和恢复对象的内部状态。?
? 19、解释器模式(Interpreter Pattern)?
? 20、状态模式(State Pattern)?
? 状态模式将一个类实例的变量保存在独立的内存空间中。?
? 21、策略模式(Strategy Pattern)?
? 策略模式定义了一组算法,将每个算法都封装起来,并且使它们之间可以互换。策略模式使这些算法在客户端调用它们的时候能够互不影响地变化。?
? 22、职责链模式(Chain of Responsibility)?
? 职责链模式将请求传递给一组对象,只有特定的对象才会处理该请求。这样就进一步削弱类之间的联系?
? 23、访问者模式(Visitor Pattern)?
? 访问者模式通过一个访问类来访问其他类中的数据

读书人网 >软件开发

热点推荐