Junior — Middle
Explique la différence entre l'état conservé à l'intérieur du système et les systèmes qui ne conservent pas d'état entre les requêtes.
sobes.tech IA
Réponse de l'IA
L'état, conservé à l'intérieur du système (avec état), signifie que le système stocke des informations sur les interactions ou données précédentes entre les requêtes. Cela permet au système de se souvenir du contexte de l'utilisateur, des paramètres ou des résultats intermédiaires.
En revanche, les systèmes sans état (sans état) ne stockent aucune information entre les requêtes. Chaque requête est traitée comme nouvelle, indépendante, sans connaissance des précédentes.
Dans Flutter, cela se manifeste ainsi :
- Stateful Widget — widget qui conserve l'état (par exemple, un compteur, un texte saisi). Lorsqu'on modifie l'état, le widget se redessine, en conservant les données entre les mises à jour.
- Stateless Widget — widget sans état, construit uniquement à partir des paramètres d'entrée et ne stocke pas de données internes.
Exemple :
class CounterWidget extends StatefulWidget {
@override
_CounterWidgetState createState() => _CounterWidgetState();
}
class _CounterWidgetState extends State<CounterWidget> {
int _counter = 0;
void _increment() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Column(
children: [
Text('Count: \\$_counter'),
ElevatedButton(onPressed: _increment, child: Text('Increment')),
],
);
}
}
Ici, l'état _counter est conservé entre les clics, ce qui n'est pas possible dans un widget sans état.