Lazy Load Pattern
Lazy loading is a software design pattern where the initialization of an object occurs only when it is actually needed and not before to preserve simplicity of usage and improve performance. In another word "Lazy initialization of an object means that its creation is deferred until it is first used."
- When initializing there can be some lag when things are getting loaded into memory.
The following code snippet demonstrates how lazy loading works: