Flutter-kehyksessä on kaksi perustyyppiä widget-komponenteille: StatelessWidget (muuttumaton, ei sisäistä tilaa joka muuttuu) ja StatefulWidget (voi säilyttää ja päivittää muuttuvaa tilaa, piirtää uudelleen kun tila muuttuu). Oikean tyypin valinta on keskeistä Flutter-käyttöliittymien rakentamisessa.
StatelessWidget — ei muuttuvaa tilaa
// a StatelessWidget: just describes UI based on its inputs (immutable, no internal state)
class Greeting extends StatelessWidget {
final String name;
const Greeting(this.name);
@override
Widget build(BuildContext context) {
return Text('Hello, $name'); // UI depends only on inputs, never changes itself
}
}
// → use for UI that doesn't change on its own (static content, displays based on inputs)
