Wpis z mikrobloga

Mógłby mi ktoś w miarę prosty sposób wytłumaczyć czym są eventy? Czy dobrze rozumiem, że one służą, do tego, że jak np. w jakiejś metodzie coś się stanie to ten event jest uruchamiany i subskrybenci wykonują to co mają do wykonania, ale po za tą metodą, żeby nie wywoływać tych method subskrybentów bezpośrednio w innej metodzie? Nie wiem, czy nie pogmatwałem trochę. Może ktoś mogły podać jakiś dość prosty i klarowny przykład zastosowania eventów?
#programowanie #programista15k #naukaprogramowania #csharp #informatyka
  • 6
@Edelner: Tak, one służą do powiadamianie jednej klasy na temat zdarzenia, które miało miejsce w innej klasie.

Tutaj masz prosty przykład, który wszystko wyjaśnia.
W aplikacji konsolowej stworzono klasę Counter, która liczy kliknięcia litery "a" przez użytkownika. Każde kliknięcie powoduje, że dodawana jest liczba 1 do zmiennej total. W momencie, kiedy liczba kliknięć przekroczy próg określony w zmiennej threshold wywoływana jest metoda OnThresholdReached, która wywołuje EventHandler. To, co
@Edelner: Event, to jakbyś siedząc na open space, jak coś zrobisz krzyczał do wszystkich jakieś hasło. Kto będzie chciał, słuchał to zareaguje. Kto słucha, nie wiesz. Kto cokolwiek z tym robisz? Nie wiesz. Po prostu robisz swoje, wysyłasz event, ktoś go może (a może i nie) skonsumuje.