Kotlin упростил жизнь разработчиков, закрыв множество кода от глаз, генерируя его. Но не всегда так очевидно и нужно быть внимательным: 👉 Extention функции не всегда статические методы 👉 Inline классы не всегда встраиваются в код, а используются как обычные классы 👉 Неочевидное перекрытие имен c extention функциями и обычными 👉 Особенности работы методов по умолчанию в интерфейсах неочевидны в каждом случае