Built-in Standard Delegates
Kotlin provides a few built-in delegates that we can readily benefit from. The Lazy delegate is useful to defer creating objects or executing computations until the time the result is truly needed. The observable delegate is useful to observe or monitor changes to the value of a property. The vetoable delegate can be used to reject changes to properties based on some rules or business logic. We’ll explore these features in this section.
It’s OK to Get a Little Lazy
Decades ago John McCarthy introduced short-circuit evaluation to eliminate redundant computations in Boolean logic—the execution of an expression is skipped if the evaluation of an expression ahead of it is enough to yield the result. Most programming languages ...