Implementation of Design Patterns: Elements of Reusable Object-Oriented Software C#, Console, Demostration of design patterns