static void Main(string[] args) { Console.WriteLine("----------------------------- Abstract Factory -----------------------------"); AbstractFactoryClient abstractFactoryClient = new AbstractFactoryClient(new WinFactory()); // change to MacFactory if needed abstractFactoryClient.Start(); Console.WriteLine("----------------------------- Factory Method -----------------------------"); Parent.Create().Run(); Parent.Create().Run(); Console.WriteLine("----------------------------- Adapter -----------------------------"); IToAdapt toAdapt = new ToAdapt(); IAdapter adapter = new Adapter.Adapter(toAdapt); adapter.NormalMethod1(); adapter.NormalMethod2(); Console.WriteLine("----------------------------- Proxy -----------------------------"); IServer server = new Server(); IServer proxyServer = new Proxy.Proxy(server); Client proxyClient = new Client(proxyServer); proxyClient.Run(); Console.WriteLine("----------------------------- Decorator -----------------------------"); Decorator.Client decClient = new Decorator.Client(); decClient.Run(); Console.ReadKey(true); }
public static void UseAdapter() { var adaptee = new Adaptee(); var adapter = new Patterns.Adapter.Adapter(adaptee); adapter.Request(1); var target = new Target(); target.Request(2); }