The declarative approach on Android.
WHAT IT IS
A toolkit for building Android interfaces by describing what should appear for a given state.
WHAT IT REPLACES
Defining layouts in markup and manipulating views in code.
WHAT THE CORE IDEA IS
A function takes state and emits interface. When the state changes, the function runs again.
WHAT THAT IS CALLED
Recomposition.
WHY IT MATTERS
You no longer synchronise views with data manually, which is where most interface bugs came from.
WHAT A COMPOSABLE IS
A function describing part of the interface.
WHAT MAKES IT DIFFERENT FROM A NORMAL FUNCTION
It can be called again at any time, in any order, and possibly in parallel.
WHAT THAT IMPLIES
It must have no side effects, and must not depend on being called once.
WHAT TO AVOID IN A COMPOSABLE
Modifying anything outside it Performing network or database work directly Depending on execution order
WHAT TO USE INSTEAD
The effect facilities, which run at defined points in the lifecycle.
WHAT TO LEARN FIRST
State, recomposition, and modifiers.