Flutter ਦੀ rendering ਵਿੱਚ ਤਿੰਨ trees ਸ਼ਾਮਲ ਹਨ — Widget tree (configuration), Element tree (instantiated, managed widgets), ਅਤੇ RenderObject tree (layout ਅਤੇ painting)। ਇਸ pipeline ਨੂੰ ਸਮਝਣਾ ਇਹ ਸਪਸ਼ਟ ਕਰਦਾ ਹੈ ਕਿ Flutter ਕਿਵੇਂ efficiently widgets ਨੂੰ pixels ਵਿੱਚ ਬਦਲਦਾ ਹੈ।
ਤਿੰਨ trees
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
