Почему я перешёл на Jetpack Compose и бросил XML
Когда я начинал Android-разработку, почти все экраны писались на XML. Казалось, что так проще: есть визуальный редактор, знакомая разметка, куча гайдлайнов и примеров на StackOverflow. Но чем больше проектов я делал, тем больше замечал, как XML начинает тормозить и усложнять жизнь:
- Списки -> нужен RecyclerView, Adapter, ViewHolder, layout-файл. Каждая мелкая правка требует дублирования кода.
- Анимации -> чтобы сделать что-то динамичное, нужно писать десятки строк boilerplate-кода, плюс сложные состояния.
- Динамический UI -> изменение одного элемента часто вызывает переписывание нескольких layout-файлов.
Когда я попробовал Jetpack Compose, ощущение было как переход с Windows 95 на современный MacBook: всё стало проще, быстрее и удобнее.
Пример: список прокручиваемых элементов
XML:
- RecyclerView
- Adapter
- ViewHolder
- Layout-файлы
- notifyDataSetChanged / DiffUtil
Реализация аналогичного списка на Compose:
Одна функция вместо нескольких файлов и десятков строк кода.
Но важно понимать: Compose не волшебство. Он требует знания View-системы, lifecycle и архитектуры приложения. Без этого новичку может показаться, что UI «сам себя делает».
На своём Telegram-канале я делюсь:
- лайфхаками по Android-разработке
- реальными примерами кода
- своим опытом перехода на Compose и избегания типичных ошибок
Если хотите ускорить разработку и писать код проще — подписывайтесь.