Events
Contrary to direct-call functions, events are "events" that:
- Happens sporadically and may not happen at all. You cannot predict when or whether they will happen.
- Are globally recognized.
These two properties make events very different, especially the second. We need to