Understand Every Line of Your Codebase
summary
Shows how every Kotlin statement compiles to JVM class files and Android DEX, using IntelliJ decompiler and ClassyShark to inspect real bytecode. Demonstrates concrete translations: data classes generate componentN/copy/equals/hashCode, extension functions become static helpers, nullability inserts runtime checks, inline lambdas inline code while non-inline create Function1 objects. Calls out the concrete costs: roughly 5–6k extra methods and ~1MB of Kotlin runtime in an APK, and explains how to spot and fix unexpected bytecode.
AI-written summary · about
chapters (25)
- 0:00Introduction
- 0:30Overview
- 1:43Intro to Java
- 5:00How Kotlin fits in our Java pipeline
- 7:10How to get from Kotlin to Java
- 11:15User Class
- 13:07Data Classes
- 13:25New Part
- 13:35Components
- 14:15Synthetic Bridge
- 14:49Null Ability
- 16:52Extension Functions
- 18:03Static Utility Classes
- 19:17lambdas
- 20:18inline function
- 21:04call function
- 21:45inline functions
- 22:14not in line
- 22:37byte code
- 23:22final class
- 24:21static instance
- 25:51Kotlin costs
- 26:33Run time
- 26:53Summary
- 27:45Questions








