Object-Oriented design patterns illustrated using C# in Visual Studio 2015 Preview