C # ha eventi integrati con una parola chiave. Quindi se vuoi dichiarare un evento, scrivi:
public event MyEventHandler SomethingHappened;
È comodo, in quanto consente di aggiungere più gestori di eventi, sebbene impedisca anche di personalizzare il modo in cui vengono gestiti gli eventi, ad esempio se si desidera garantire che determinati gestori di eventi vengano sempre eseguiti in un determinato ordine.
Sembra che il codice sarebbe più flessibile se fosse scritto invece come:
public Event<MyEventHandler> SomethingHappened = default;
Quindi potresti anche sostituire eventi personalizzati. Non vedo inoltre alcun motivo per cui l'operazione +=
non possa ancora essere utilizzata per aggiungere nuovi gestori. Quindi questo riduce semplicemente la flessibilità o la parola chiave offre qualcos'altro?