미처 완성되지 못한 알고리즘
팩토리 메소드 패턴 간단한 예 본문
abstract class Product { }
class ConcreteProductA : Product { }
class ConcreteProductB : Product { }
abstract class Creator
{
public abstract Product FactoryMethod();
}
class ConcreteCreatorA : Creator
{
public override Product FactoryMethod()
{
return new ConcreteProductA();
}
}
class ConcreteCreatorB : Creator
{
public override Product FactoryMethod()
{
return new ConcreteProductB();
}
}
class Program
{
static void Main(string[] args)
{
Creator[] creators = new Creator[2];
creators[0] = new ConcreteCreatorA();
creators[1] = new ConcreteCreatorB();
for(int i = 0; i < creators.Length ;i++)
{
var product = creators[i].FactoryMethod();
Console.WriteLine("created {0}", product.GetType().Name);
}
}
}
'IT > 디자인 패턴' 카테고리의 다른 글
command 패턴의 간단한 예들 (0) | 2017.10.02 |
---|---|
옵저버 패턴의 간단한 예들 (0) | 2017.09.29 |
어댑터 패턴의 간단한 예들 (0) | 2017.09.29 |
간단한 싱글톤 예제들 (0) | 2017.09.25 |