Originariamente inviato da daniele_dll
qualcosa di quel tipo ...
per esempio quando si attiva un componente questo registra gli eventi a cui è interessato (per esempio:
* System.Users.Authentication.OnLogin
* System.Users.Session.OnDestroy
* System.Users.OnAdd
e poi il componente che genera quei dati necessari richiama quel dato evento in modo da notificare tutti gli altri componenti interessati che si è scatenato l'evento, che i dati sono X, Y e Z e cosi via
Con un sistema del genere, se è organizzato bene, tu non avrai assolutamente bisogno di andare a modificare a monte
Nel caso non dovesserò andarti bene questi eventi degli eventi più basilari come:
* System.Data.OnResultSet (per esempio che si scatena quando viene generato un resultset da una query)
* System.Components.OnBeforeLoad (che ad esempio si scatena prima che un dato componente venga caricato)
* System.Components.OnAfterLoad (che si scatena dopo che il componente è stato caricato)
e cosi via
Ovviamente questi componenti vanno ben organizzati e strutturati altrimenti si accavallano tra loro o creano altri tipi di problemi
l'evento lo richiami per esempio tramite
$evento = System_Components_Event::Get(System.Components.OnB eforeLoad);
$evento->Call($elenco, $dei, $parametri);
ovviamente può anche diventare direttamente
(System_Components_Event::Get(System.Components.On BeforeLoad))->Call($elenco, $dei, $parametri)
questa è una delle strutture che sto mettendo alle spalle del mio framework
basta che i pochi componenti base siano flessibili e ben organizzati, e gli altri si si basino correttamente sul core usando gli eventi e il gioco è fatto