Android GDE || Android engineer @nytimes
Item 7: Prefer a nullable or Result result type when the lack of a result is possible
Why should we prefer to avoid throwing exceptions and using types to our advantage.
Item 5: Specify your expectations for arguments and state
How do we specify requirements and expectations in Kotlin.
Item 3: Eliminate platform types as soon as possible
Why platform types are so dangerous, and how should we deal with them.
Effective Kotlin Item 34: Consider a primary constructor with named optional arguments
Why telescoping-constructor pattern and the classic builder pattern are considered outdated in Kotlin.
Effective Kotlin Item 33: Consider factory functions instead of secondary constructors
What factory functions are and why they are so important patterns for object creation.
Effective Kotlin Item 36: Prefer composition over inheritance
Years of OOP made us overuse inheritance. Instead, we should more often use a composition that is safer and more explicit. More often, but not always...