一直很神往设计模式GoF的GoF of book《Design Patterns》,周末有空就拿出来研究了一番,只看了3/23,呵呵,四位大牛写得太精练,看了不知道所云,先记下来以后再研究。
Abstract Factory模式,一般作为一个抽象类(AbstractFacotry)提供一些创建产品和产品组件的接口,具体地工厂(Conctrete Factory)实例用继承实现,对一个产品具体一个工厂,还有抽象产品组件和具体的产品,具体产品(Concrete Product)从具体的工厂创建。创建一个产品时,传入具体的工厂作为参数,一开始就创建一个产品,再在这个产品上装配一些组件。它有点侧重一系列产品。
Builder模式也是传入一个参数给导向器,不过这个参数是(Builder),导向器(Director)也类似一个创建器,根据不同的Builder实例来创建不同的产品。每一个Builder类都有一个Get方法,用来一步一步生成产品组件后,最后返回产品,与Abstract Factory模式相比,它有点类似构建。
Factory Method模式,就是要区别何为Creator,保为Product,创建一个Abstract Creator类,虚函数指定一些工厂方法(Facotry Method) ,实例成不同的Creator,按需求具体重写这些接口,生成具体的产品,在迷宫里MazeGame是Creator,迷宫是Product。它可以创建不同大小,不同风格的迷宫。
1823

被折叠的 条评论
为什么被折叠?



