设计模式是面向对象程序编程的重要学习内容。设计模式的应用对于面向对象编程来说相当于经验,能够复用代码同时安全可靠。本文介绍工厂模式、策略模式和适配器模式。
工厂模式包括简单工厂模式,工厂方法模式和抽象工厂模式。
简单工厂模式:是根据模型或标签(参数)选择生产不同的产品。表现在一个工厂生产多种产品。
工厂方法模式:是在简单工厂模式上进化而来的。表现在有多个工厂,每个工厂生产一种产品。
抽象工厂模式:和工厂方法模型类似。但是每个工厂此时生产一类产品,可能包括多种产品。
看上去像是工厂的进化论,先是简单工厂模式可是生产任何产品,但是未必效率会高。经分治优化而得工厂方法模型,每个工厂只生产一种产品。此时对于工厂等基础设施的利用率不高。抽象工厂方法取得折中,即分类生产提高效率,又避免需要大量的厂房(类)。