代码改变世界

随笔档案-2012年5月23日

设计模式_2_简单工厂、工厂方法、抽象工厂比较

2012-05-23 00:02 by Mike.Jiang, 492 阅读, 收藏,
摘要: 这三个模式主要的应用场景是:当创建单个(简单工厂、工厂方法)或多个(抽象工厂)系列对象,客户程序为了生成某个具体对象判断复杂,可能多处使用,并且在添加新的实现或新的系列时,需要过多改动已有的客户代码,为了解决这些问题,出现了这三种套路。(篇幅有限就不贴代码了) 首先,简单工厂: 在简单工厂中(应对于生成单系列的对象),客户程序仅依赖于Factory和Product类,而不依赖于具体的实现类,CreateProduct方法用于根据传入的参数,生成不同的对象,实际上就是将客户程序中对生成不同实现对象的重构,将创建对象的方法,封装到一个方法中,在这里我们封装成一个工厂类,将生成不同对象的判断逻辑放. 阅读全文