Factory Method
Following is an example of the Factory Method. In this case, a method call sets and returns the type. Also, pardon the values set as field, rather than as properties, but this is a simple example, rather than a full implementation.
Salient Point(s)
A hidden constructorEach class method instantiates the class differently.
Code
using System;
namespace DesignPatterns
{
//primary class for factory method
public class FactoryObject
{
//public fields, set as part of method and return
public int X;
public int Y;
public int Result;
//factory method
public FactoryObject Addition(int x, int y)
{
return new FactoryObject(x, y, x + y);
}
//factory method
public FactoryObject Subtaction(int x, int y)
{
return new FactoryObject(x, y, x - y);
}
//factory method
public FactoryObject Multiplication(int x, int y)
{
return new FactoryObject(x, y, x * y);
…
Salient Point(s)
A hidden constructorEach class method instantiates the class differently.
Code
using System;
namespace DesignPatterns
{
//primary class for factory method
public class FactoryObject
{
//public fields, set as part of method and return
public int X;
public int Y;
public int Result;
//factory method
public FactoryObject Addition(int x, int y)
{
return new FactoryObject(x, y, x + y);
}
//factory method
public FactoryObject Subtaction(int x, int y)
{
return new FactoryObject(x, y, x - y);
}
//factory method
public FactoryObject Multiplication(int x, int y)
{
return new FactoryObject(x, y, x * y);
…