References:
Todo:
- Delegates and Event topic (https://github.com/dotnet/samples/tree/master/csharp/events)
- Tutorial: Express your design intent more clearly with nullable and non-nullable reference types (https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/nullable-reference-types)