public Client(AbstractFactory factory) { abstractProductB = factory.CreateProductB(); abstractProductA = factory.CreateProductA(); }
static void Main(string[] args) { #region Observer //Stock stock = new Stock(); //Bank bank = new Bank("ЮнитБанк", stock); //Broker broker = new Broker("Иван Иваныч", stock); //// имитация торгов //stock.Market(); //// брокер прекращает наблюдать за торгами //broker.StopTrade(); //// имитация торгов //stock.Market(); //Console.Read(); #endregion Observer #region Proxy //Subject subject = new Proxy(); //subject.Request(); //using (IBook book = new BookStoreProxy()) //{ // // читаем первую страницу // Page page1 = book.GetPage(1); // Console.WriteLine(page1.Text); // // читаем вторую страницу // Page page2 = book.GetPage(2); // Console.WriteLine(page2.Text); // // возвращаемся на первую страницу // page1 = book.GetPage(1); // Console.WriteLine(page1.Text); //} //Console.Read(); #endregion Proxy #region Decorator //Pizza pizza1 = new ItalianPizza(); //pizza1 = new TomatoPizza(pizza1); // итальянская пицца с томатами //Console.WriteLine("Название: {0}", pizza1.Name); //Console.WriteLine("Цена: {0}", pizza1.GetCost()); //Pizza pizza2 = new ItalianPizza(); //pizza2 = new CheesePizza(pizza2);// итальянская пиццы с сыром //Console.WriteLine("Название: {0}", pizza2.Name); //Console.WriteLine("Цена: {0}", pizza2.GetCost()); //Pizza pizza3 = new BulgerianPizza(); //pizza3 = new TomatoPizza(pizza3); //pizza3 = new CheesePizza(pizza3);// болгарская пиццы с томатами и сыром //Console.WriteLine("Название: {0}", pizza3.Name); //Console.WriteLine("Цена: {0}", pizza3.GetCost()); #endregion Decorator #region FactoryMethod //FactoryMethod.FactoryMethodPattern(); #endregion FactoryMethod #region AbstractFactory AbstractFactory.Execute(); #endregion AbstractFactory Console.ReadLine(); }
public Creature(AbstractFactory factory) { abstractSoul = factory.CreateSoul(); abstractBody = factory.CreateBody(); }