Sobes.tech
Junior

Zašto se Flutter widgeti nazivaju laganim komponentama?

sobes.tech АИ

Одговор од АИ

Widgeti u Flutter-u opisuju samo trenutnu konfiguraciju UI elementa, a ne sam primerak elementa. Kada dođe do promene stanja, widgeti se rekonstrušu, stvarajući novi primerak, ali Dart VM efikasno upoređuje stare i nove widgete, ažurirajući samo one delove stabla renderovanja koji su se zaista promenili. Ovo omogućava izbegavanje skupih operacija kreiranja i brisanja nativnih UI elemenata, čineći ih "lakim".

  • Nepromenljivost: Widgeti su nepromenljivi, što olakšava njihovo poređenje i ponovnu upotrebu.
  • Deklarativni pristup: Opis UI u obliku widgeta je deklarativan, što obezbeđuje visok učinak pri promenama.
  • Efikasni algoritam diffing: Flutter koristi optimizovani algoritam za brzo poređenje widgeta i ažuriranje UI.

Primer kreiranja jednostavnog tekstualnog widgeta:

// Kreiranje objekta widgeta
Text(
  'Zdravo, svet!', // Konfiguracija widgeta
  style: TextStyle(fontSize: 20.0),
);

Prilikom promene teksta, biće kreiran novi objekat Text sa novom konfiguracijom, ali će renderovanje biti efikasno ažurirano.