Implementing Multiplatform Kotlin Mobile
How in Kotlin we can implement Android and iOS projects with shared logic.
Implementing Multiplatform Kotlin library
How in Kotlin we can use multiplatform capabilities to distribute the same code to multiple platforms.
Using Multiplatform Kotlin
The essence of using multiplatform Kotlin capabilities and definition common elements.
Kotlin and Java interoperability: Traps and gotchas
The parts of Kotlin and Java interoperability that might be surprising or counterintuitive.
Kotlin and Java interoperability: Useful annotations
Learn about useful Kotlin annotations, that decide that it is compiled to on JVM.
Kotlin and Java interoperability: Properties and annotations
Kotlin property is Java getter, setter, field and possibly more. So what to do, when you need to annotate or use a specific JVM element?
Kotlin and Java interoperability: Types
See surprising transitions that happens on types when you interoperate between Kotlin and Java.
Practical review of Kotlin Contracts - a feature we often use, without knowing about it.
Map as a property delegate
How do we use Map as a property delegate, and why the result of a famous puzzler should not be surprising.
Observable and Vetoable delegates
What are observable and vetoable delegates, and what are their real-life use cases.
Lazy property delegate
What is lazy delegate, and what are its real-life use cases.
What is property delegation, how does it work, and how can we implement our custom property delegate.
What is let, also, apply and with, and how to use them in our applications.
DSL type-safe builders
How to define type-safe DSL builders in Kotlin.
Let's learn how to use lambda expressions, what special support they have, and what traps they generate.
How do we reference functions in Kotlin, to replace lambda expressions. All functions, including constructors, getters, extensions and more.