Android · Kotlin · Compose · Architecture

Mastering Android

In-depth tutorials, deep dives, and field notes on shipping production Android apps — from a 14+ year engineering veteran.

Jetpack Compose Coroutines & Flows Clean Architecture Testing System Design Performance

Featured

Latest

Kotlin

StateFlow vs SharedFlow in Kotlin

StateFlow holds current UI state. SharedFlow broadcasts one-time events. This guide breaks down how each works, their key differences, when to use whi...

Kotlin

Abstract Classes vs Interfaces in Kotlin

Learn when to use abstract classes vs interfaces in Kotlin. Covers constructors, state, default implementations, multiple inheritance, the comparison ...

Kotlin

Delegation in Kotlin

Learn delegation in Kotlin — interface delegation with the by keyword, lazy initialization, observable and vetoable property delegates, custom d...

Kotlin

Generics in Kotlin

Learn Kotlin generics from scratch — generic classes, generic functions, type constraints, variance with in/out, star projection, reified types,...

Kotlin

Destructuring Declarations in Kotlin

Learn destructuring declarations in Kotlin — how to unpack data classes, Pairs, and Maps into variables, how to skip components with underscore,...

Kotlin

Inline Functions in Kotlin

Learn how inline functions work in Kotlin — how the compiler eliminates lambda allocations, how reified generics preserve type information at ru...