Design Pattern Examples
Overview of object-oriented design patterns
csharp Directory Reference

Directories

directory  Properties
 

Files

file  Adapter_BackEndFunctions.cs [code]
 The DataReadWriteFunctions class static functions as used in the Adapter Pattern.
 
file  Adapter_Exercise.cs [code]
 The Adapter_Exercise class used in the Adapter Pattern.
 
file  Adapter_FrontEndClass.cs [code]
 The DataReaderWriter class used in the Adapter Pattern.
 
file  Bridge_ConsoleLogger.cs [code]
 The ConsoleLogger class as used in the Bridge pattern.
 
file  Bridge_Exercise.cs [code]
 The Bridge_Exercise class used in the Bridge Pattern.
 
file  Bridge_FIleLogger.cs [code]
 The FileLogger class as used in the Bridge pattern.
 
file  Bridge_Logger.cs [code]
 The Logger class as used in the Bridge pattern.
 
file  Bridge_LoggerHelpers.cs [code]
 The LoggerHelpers class static functions as used in the Bridge pattern.
 
file  Bridge_LoggerInterface.cs [code]
 The ILogger interface as used on all loggers in the Bridge pattern.
 
file  Bridge_NullLogger.cs [code]
 The NullLogger class as used in the Bridge pattern.
 
file  Command.cs [code]
 The Command_TextObject and Command classes as used in the Command pattern.
 
file  Command_Exercise.cs [code]
 The Command_Exercise class used in the Command Pattern.
 
file  Composite_Exercise.cs [code]
 The Composite_Exercise class used in the Composite Pattern.
 
file  Composite_FileAccess.cs [code]
 The Composite_FileAccess static class as used in the Composite pattern.
 
file  Composite_FileDirEntry.cs [code]
 The FileDirEntry base class, and the FileEntry and classes and the DirEntry classes as used in the Composite pattern.
 
file  Decorator_Classes.cs [code]
 The IRenderElement interface, the Decorator base class, TextElement class, and the concrete decorator classes used in the Decorator pattern.
 
file  Decorator_Exercise.cs [code]
 The Decorator_Exercise class used in the Decorator Pattern.
 
file  EnableVTModeForWindowsConsole.cs [code]
 The EnableVTModeForWindowsConsole class to enable virtual terminal processing in the Windows terminal as used in the Decorator pattern.
 
file  Facade_ComplicatedSubSystem.cs [code]
 The Facade_ComplicatedSubSystem class and supporting classes that represent the complicated sub-system used in the Facade pattern.
 
file  Facade_Exercise.cs [code]
 The Facade_Exercise class used in the Facade Pattern.
 
file  Facade_Interfaces.cs [code]
 The IDeviceNetworkLowLevel and IDeviceNetworkHighLevel interfaces, used in the Facade pattern.
 
file  Flyweight_Class.cs [code]
 The Flyweight_Context struct, and the Flyweight_Class, BigResource, and BigResourceManager classes used in the Flyweight pattern.
 
file  Flyweight_Exercise.cs [code]
 The Flyweight_Exercise class used in the Flyweight Pattern.
 
file  HandlerChain_Class.cs [code]
 The IMessageHandler interface and the HandlerChain class used in the HandlerChain pattern.
 
file  HandlerChain_Exercise.cs [code]
 The HandlerChain_Exercise class used in the HandlerChain Pattern.
 
file  HandlerChain_Message_Class.cs [code]
 The MessagePosition and Message structs used in the HandlerChain pattern.
 
file  HandlerChain_MessageWindow_Class.cs [code]
 The MessageWindow and WindowRectangle classes used in the HandlerChain pattern.
 
file  Interpreter_Class.cs [code]
 The Interpreter_Class class used in the Interpreter pattern.
 
file  Interpreter_Exercise.cs [code]
 The Interpreter_Exercise class used in the Interpreter Pattern.
 
file  Iterator_Exercise.cs [code]
 The Iterator_Exercise class used in the Iterator Pattern.
 
file  IteratorContainer_Class.cs [code]
 The IteratorContainer_Class class and the IIterator template interface used in the Iterator pattern.
 
file  Mediator_Class.cs [code]
 The UserGroupsContainer and the UserGroupMediator classes used in the Mediator pattern.
 
file  Mediator_Exercise.cs [code]
 The Mediator_Exercise class used in the Mediator Pattern.
 
file  Mediator_Group_Classes.cs [code]
 The Group and the GroupList classes used in the Mediator pattern.
 
file  Mediator_User_Classes.cs [code]
 The User and the UserList classes used in the Mediator pattern.
 
file  Memento.cs [code]
 The Memento_TextObject class used in the Memento pattern.
 
file  Memento_Exercise.cs [code]
 The Memento_Exercise class used in the Memento Pattern.
 
file  Null_Object.cs [code]
 The MoveProcessor class and the MoveCommand base class, along with the various MoveXX classes used in the Null Object Pattern.
 
file  NullObject_Exercise.cs [code]
 The NullObject_Exercise class used in the Null Object Pattern.
 
file  Observer_Class.cs [code]
 The ObserverForDecimal, ObserverForHexaDecimal, and ObserverForBinary classes used in the Observer pattern.
 
file  Observer_Exercise.cs [code]
 The Observer_Exercise class used in the Observer Pattern.
 
file  ObserverSubject_NumberProducer.cs [code]
 The IObserverNumberChanged, IEventNotifications, and INumberProducer interfaces, and the ObserverSubject_NumberProducer class used in the Observer pattern.
 
file  Private_Class.cs [code]
 Was to be used to demonstrate the Private pattern but it is not really applicable in C#.
 
file  Program.cs [code]
 Implementation of the Main() entry point and all the design pattern example functions. See Main Overview.
 
file  Proxy_Class.cs [code]
 The IWorkByProxy interface and the Proxy_Classes_Container class used in the proxy pattern.
 
file  Proxy_Exercise.cs [code]
 The Proxy_Exercise class used in the Proxy Pattern.
 
file  State_Class.cs [code]
 The IStateContext and IStateBehavior interfaces, and the various StateXXX classes used in the State pattern.
 
file  State_Exercise.cs [code]
 The State_Exercise class used in the State Pattern.
 
file  Strategy_Exercise.cs [code]
 The Strategy_Exercise class used in the Strategy Pattern.
 
file  Strategy_ShowEntries_Class.cs [code]
 The EntryInformation and Strategy_ShowEntries_Class classes used in the Strategy pattern.
 
file  Strategy_SortEntries_Classes.cs [code]
 The ISortEntries interface and the various StrategyXXX classes that implement the interface as used in the Strategy pattern.
 
file  Templates.cs [code]
 Was to be used to demonstrate the Template pattern but it is not really applicable in C#.
 
file  Visitor_Element_Classes.cs [code]
 The Visitor base class, the Visitor_Shop base class, and the various "shop" classes used in the Visitor pattern.
 
file  Visitor_Exercise.cs [code]
 The Visitor_Exercise class used in the Visitor Pattern.
 
file  Visitor_Village.cs [code]
 The Village class used in the Visitor pattern.
 
file  Visitor_Visitor_Class.cs [code]
 The OrderVisitor class used in the Visitor pattern.