Junior — Middle
Můžete vysvětlit, co se rozumí pod pojmem 'událost' v kontextu vývoje softwaru?
sobes.tech AI
Odpověď od AI
V programování je událost signálem nebo oznámením o tom, že došlo k nějaké akci nebo změně stavu, na kterou může program reagovat.
V kontextu C# je událost obvykle spojena s delegáty a slouží k implementaci vzoru "pozorovatel". Objekt, který generuje událost (vysílač), informuje ostatní objekty (předplatitele) o události, která nastala, voláním příslušných handlerů.
Příklad:
public class Button
{
public event EventHandler Click;
public void OnClick()
{
Click?.Invoke(this, EventArgs.Empty);
}
}
// Použití
Button button = new Button();
button.Click += (sender, e) => Console.WriteLine("Tlačítko stisknuto");
button.OnClick();
Tímto způsobem umožňuje událost oddělit zdroj události od handlerů, čímž zajišťuje flexibilní architekturu aplikace.