inline, crossinline и reified в KotlinКонструкции
inline, crossinline и reified в Kotlin позиционируются как абстракции без накладных расходов. Действительно, они позволяют избежать лишних выделений памяти, создавать типобезопасные билдеры и улучшать производительность.Однако неправильное их использование может привести к следующим проблемам:
- Повреждённые stack trace’ы, из-за чего краши трудно отлаживать в продакшене.
- Тонкие баги с отменой корутин или
IllegalStateException.- Непреднамеренные утечки API и жёсткая связка встроенного (inlined) кода.
https://proandroiddev.com/the-dark-corners-of-inline-crossinline-and-reified-in-kotlin-d244eaa07bb1
✍️ @kotlin_lib
