Sobes.tech
Junior — Middle

Sistemde tutulan durum ile istekler arasında durum tutmayan sistemler arasındaki farkı açıklayın.

sobes.tech yapay zeka

AI'dan gelen yanıt

Sistem içinde tutulan durum (durumlu), sistemin önceki etkileşimler veya veriler hakkında bilgi sakladığı anlamına gelir. Bu, sistemin kullanıcı bağlamını, ayarları veya ara sonuçları hatırlamasına olanak tanır.

Buna karşılık, durumsuz sistemler (stateless) herhangi bir bilgi saklamaz. Her istek yeni ve bağımsız olarak işlenir, önceki bilgilerden haberdar değildir.

Flutter'da bu şu şekilde gösterilir:

  • Stateful Widget — durumu saklayan widget (örneğin, sayaç, girilen metin). Durum değiştiğinde, widget yeniden çizilir ve veriler arasında korunur.
  • Stateless Widget — durumu olmayan, yalnızca giriş parametrelerine dayanarak inşa edilen ve iç verileri saklamayan widget.

Örnek:

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')),
      ],
    );
  }
}

Burada _counter durumu, düğmeye basmalar arasında korunur, bu da stateless widget'ta mümkün değildir.