Sobes.tech
Junior — Middle

Flutter uygulamalarında durum yönetiminde BLoC'un temel rolü nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Flutter'da durum yönetiminde BLoC (Business Logic Component) temel rolü, iş mantığını UI'den ayırmak, temiz bir mimari sağlamak ve testi kolaylaştırmaktır.

BLoC, UI'den gelen olayları (events) alır, işler, durumu değiştirir ve yeni durumu akışlar (Streams) aracılığıyla UI'ye geri iletir. Bu, UI'nin durumsal değişikliklere doğrudan müdahale olmadan tepki vermesini sağlar.

BLoC şu şekildedir:

  • Durum yönetimini merkezileştirir.
  • Kodu daha modüler ve yeniden kullanılabilir hale getirir.
  • İş mantığını arayüzden bağımsız olarak test etmeyi kolaylaştırır.

Basitleştirilmiş bir BLoC örneği:

class CounterBloc {
  final _counterController = StreamController<int>();
  int _counter = 0;

  Stream<int> get counterStream => _counterController.stream;

  void increment() {
    _counter++;
    _counterController.sink.add(_counter);
  }

  void dispose() {
    _counterController.close();
  }
}

UI, counterStream'e abone olur ve her sayaç değişikliğinde güncellenir.