Rendering Flutter melibatkan tiga pohon — Widget tree (konfigurasi), Element tree (widget yang diinstansiasi dan dikelola), dan RenderObject tree (layout dan painting). Memahami pipeline ini mengungkap bagaimana Flutter secara efisien mengubah widget menjadi pixel.
Tiga pohon
WIDGET tree → immutable CONFIGURATION (what you write: the description of the UI)
→ cheap to create/recreate; rebuilt often (build() returns new widgets)
ELEMENT tree → the INSTANTIATED widgets; manages lifecycle and LINKS widgets to render
objects; PERSISTS across rebuilds (this is the key to efficiency)
RENDEROBJECT tree → does the actual LAYOUT, PAINTING, and hit-testing (the heavy objects)
→ expensive; REUSED and updated (not recreated) across rebuilds
