Skip to content

A set of classes and interfaces to help with applying coding patterns.

Notifications You must be signed in to change notification settings

olivegamestudio/DotNetPatterns

Repository files navigation

DotNetPatterns

A set of classes and interfaces to help with applying coding patterns.

General Patterns

Build Pattern

Example:

using DotNetPatterns;

class CarBuilder : IBuilder<Car>
{
    public Car Build()
    {
        // create a new car
        return new Car();
    }
}

Command Pattern

public class ClickCommand : ICommand
{
    public void Execute()
    {
        // perform the action
    }
}

Decorator Pattern

public class ConcreteComponent
{
}

public class ConcreteDecorator<ConcreteComponent>
{
}

var item = new ConcreteComponent();
var decorator = new ConcreteDecorator(item);

Factory Pattern

public class CarFactory : IFactory<Car>
{
    public Car Create()
    {
        return new Car();
    }
}

MVVM Patterns

ViewModelBase

public class MyViewModel : ViewModelBase
{
}