static void Main(string[] args) { // Design Pattern // Observable design pattern DetectieLus lus = new DetectieLus(); Hek gate = new Hek(); gate.Open(); Lamp tl = new Lamp(); IDetectable kuil = new Valkuil(); // Moet meer gebeuren lus.Connect(gate); lus.Connect(tl); lus.Connect(kuil); lus.Trigger(); // De volgende oplossing telt niet!!!!! //tl.Aan(); //kuil.Open(); //gate.Open(); }
static void Main(string[] args) { Hek hek = new Hek(); Lamp lamp = new Lamp(); DetectieLus lus = new DetectieLus(); Valkuil kuil = new Valkuil(); lus.Activated += hek.Open; lus.Activated += kuil.Open; lus.Activated += lamp.Aan; lus.Connect(hek); lus.Connect(kuil); lus.Connect(lamp); lus.Trigger(); }
static void Main(string[] args) { Hek hek = new Hek(); Lamp lamp = new Lamp(); Valkuil kuil = new Valkuil(); DetectieLus lus = new DetectieLus(); lus.ActiveerDevices += hek.Open; lus.ActiveerDevices += kuil.Open; lus.ActiveerDevices += lamp.Aan; lus.DeactiveerDevices += lamp.Uit; lus.DeactiveerDevices += kuil.Dicht; lus.DeactiveerDevices += hek.Sluit; lus.Trigger(); }
static void Main(string[] args) { DetectieLus lus = new DetectieLus(); Hek gate = new Hek(); Lamp tl = new Lamp(); Valkuil kuil = new Valkuil(); lus.Connect(gate.Open); lus.Connect(tl.Aan); lus.Connect(kuil.Open); lus.Connect(gate); lus.Connect(tl); lus.Connect(kuil); lus.Detect += gate.Open; lus.Detect += tl.Aan; lus.Detect += kuil.Open; lus.Trigger(); }