static void Main(string[] args) { AbstractDuckFactory _duckFactory = new CountingDuckFactory(); IQuackable _mallardDuck = _duckFactory.CreateMallarDuck(); IQuackable _readheadDuck = _duckFactory.CreateRedheadDuck(); IQuackable _duckCall = _duckFactory.CreateDuckCall(); IQuackable _rubberDuck = _duckFactory.CreateRubberDuck(); IQuackable _goose = new GooseAdapter(new Goose()); Console.WriteLine("\nDuck Simulator\n"); //Стая уток DuckFlock _duckFlock = new DuckFlock(); _duckFlock.Add(_readheadDuck); _duckFlock.Add(_rubberDuck); _duckFlock.Add(_duckCall); _duckFlock.Add(_goose); _mallardDuck.Quack(); _readheadDuck.Quack(); _duckCall.Quack(); _rubberDuck.Quack(); _goose.Quack(); Console.WriteLine("\nThe ducks quacks " + QuackCounter.GetQuacks() + " times"); //Вызов стаи _duckFlock.Quack(); Console.ReadLine(); }
public string Quack() { NotifyObservers(); numberOfQuacks++; return(duck.Quack()); }
public void Quack() { IEnumerator items = quackers.GetEnumerator(); while (items.MoveNext()) { IQuackable quacker = (IQuackable)items.Current; quacker.Quack(); } }
public void Quack() { Iterator iterator = CreateIterator(); while (iterator.HasNext()) { IQuackable quacker = (IQuackable)iterator.Next(); quacker.Quack(); } }
public void Quack() { var iterator = quackers.GetEnumerator(); while (iterator.MoveNext()) { IQuackable quacker = iterator.Current; quacker.Quack(); } }
public void Quack() { DuckIterator iterator = new DuckIterator(ducks); while (iterator.HasNext()) { IQuackable quacker = (IQuackable)iterator.Next(); quacker.Quack(); } }
public void Quack() { IEnumerator <IQuackable> enumerator = quackers.GetEnumerator(); while (enumerator.MoveNext()) { IQuackable quacker = enumerator.Current; quacker.Quack(); } }
public void Quack() { // Паттерн итератор IEnumerator <IQuackable> iterator = quackers.GetEnumerator(); while (iterator.MoveNext()) { IQuackable quacker = iterator.Current; quacker.Quack(); } }
public void Quack() { // Iterator pattern at work as well! IEnumerator iterator = this.quackers.GetEnumerator(); while (iterator.MoveNext()) { IQuackable quacker = iterator.Current as IQuackable; quacker.Quack(); } }
public void Quack() { IEnumerator iterator = m_quackers.GetEnumerator(); IQuackable quacker = null; while (iterator.MoveNext()) { quacker = (IQuackable)iterator.Current; quacker.Quack(); } }
public void Compound_AbstractFactory() { IDuckFactory counterFactory = new DuckCounterFactory(); IDuckFactory duckFactory = new DuckFactory(); IQuackable duck1 = counterFactory.CreateDuckCall(); IQuackable duck2 = counterFactory.CreateRubberDuck(); IQuackable duck3 = duckFactory.CreateMallardDuck(); duck1.Quack(); duck2.Quack(); duck3.Quack(); Assert.AreEqual(2, QuackCounter.GetQuackCount()); }
public void Quack() { // Iterator Pattern IEnumerator <IQuackable> iterator = _quackers.GetEnumerator(); while (iterator.MoveNext()) { IQuackable quacker = iterator.Current; quacker.Quack(); } // Condensed, standard implementation for this action: //foreach (IQuackable quacker in _quackers) //{ // quacker.Quack(); // NotifyObservers(); //} }
public static void Simulate(IQuackable duck) { duck.Quack(); }
public void Quack() { duck.Quack(); numberOfQuacks++; }
public string QuackIt() { return(_quackable.Quack()); }
public void Quack() { _duck.Quack(); NotifyObservers(); _totalNumberOfQuacks++; }
public void Quack() { duck.Quack(); numberOfQuacks++; notifyObservers(); }
public void Quack() { _duck.Quack(); NumberOfQuacks++; }
public void Quack() { quackBehavior.Quack(); }
private string Simulate(IQuackable duck) { return duck.Quack(); }
private static void Simulate(IQuackable duck) { duck.Quack(); }
public void Quack() { _duck.Quack(); _numberOfQuack++; }
public void Simulate(IQuackable duck) { Console.WriteLine("Inside Simulate"); duck.Quack(); }
public void PerformQuack() { _quackBehaviour.Quack(); }
private static void Simulate(IQuackable duck) { duck.Quack(); }
public void Quack() { _duck.Quack(); Quacks++; }
private static void duckCall(IQuackable duck) { duck.Quack(); }
private string Simulate(IQuackable duck) { return(duck.Quack()); }
public void Quack() { duck.Quack(); //Вызов Quack() делегируется декорируемой реализации IQuackable... numberOfQuacks++; //...после чего увеличиваем счетчик }
void Simulate(IQuackable duck) { duck.Quack(); }
public void PerformQuack() { QuackBehavior.Quack(); }
void Simulate(IQuackable duck) { duck.Quack(); }
public void Quack() { QuackCount++; duck.Quack(); NotifyObservers(); }