设计模式学习4 Factory Pattern
2010-07-20 14:37
323 查看
应用场景:
在软件系统中,经常面两“某个对象”的创建的工作,但是由于需求的变化,这个对象经常面临剧烈的变化,但是接口是相对稳定的。这里可以使用Factory Pattern来实现。Factory Pattern针对的是一个对象,而Abstract Factory针对的是一系列的对象的变化。
实现代码:
接口实现:public enum Direction { NORTH, SOUTH, WEST, EAST }; public interface ICar { void Startup(); void Run(); void Turn(Direction direction); void Stop(); } public interface ICarFactory { ICar CreateCar(); }
客户程序:
public class CarTestFramework { public void BuildTestContext(ICarFactory factory) { // ICar car = new Car(); // ... ICar car = factory.CreateCar(); } public void DoTest(ICar car) { // ICar car = new Car(); // ... car.Run(); } public void GetTestData(ICar car) { // ICar car = new Car(); // ... } }
接口实现类:
public class HongQiCar : ICar { #region ICar Members public void Startup() { Console.WriteLine("HongQi Car Startup"); } public void Run() { Console.WriteLine("HongQi Car Run"); } public void Turn(Direction direction) { Console.WriteLine("HongQi Car Turn"); } public void Stop() { Console.WriteLine("HongQi Car Stop"); } #endregion } #region ICarFactory Members public ICar CreateCar() { return new HongQiCar(); } #endregion
相关文章推荐
- 设计模式学习笔记--简单工厂模式(Simple Factory Pattern)【创建型模式】
- 设计模式学习——抽象工厂模式(Abstract Factory Pattern)
- 设计模式学习4 Factory Pattern
- 设计模式学习笔记--抽象工厂模式(Abstract Factory Pattern)【创建型模式】
- 设计模式学习总结-抽象工厂模式(Abstract Factory Pattern)
- 设计模式学习总结-抽象工厂模式(Abstract Factory Pattern)
- 设计模式学习笔记一:Simple factory pattern,简单工厂模式
- 设计模式学习总结-抽象工厂模式(Abstract Factory Pattern)
- 设计模式学习总结-抽象工厂模式(Abstract Factory Pattern)
- 设计模式学习(三) -- 工厂模式 Factory Pattern
- 设计模式学习--工厂模式(Factory Pattern)
- 设计模式学习--工厂模式(Factory Pattern)
- 设计模式学习--工厂模式(Factory Pattern)
- 设计模式学习总结-简单工厂模式(Simple Factory Pattern)
- 设计模式学习——工厂模式(Factory Pattern)
- C#设计模式(4)-Simple Factory Pattern
- C#设计模式(4)-Simple Factory Pattern
- 24种设计模式--抽象工厂模式【Abstract Factory Pattern】
- 设计模式学习笔记--工厂方法模式(Factory Method Pattern)【创建型模式】
- 设计模式学习--迭代器模式(Iterator Pattern)和组合模式(Composite Pattern)