Sobes.tech
Junior — Middle

Flutter tətbiqlərində vəziyyət idarə edilməsində BLoC-un əsas rolu nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Flutter-da vəziyyət idarə edilməsində BLoC (Business Logic Component) əsas rolu biznes məntiqini UI-dən ayırmaqdır, bu da təmiz memarlıq təmin edir və testləri asanlaşdırır.

BLoC UI-dən hadisələri (events) qəbul edir, onları emal edir, vəziyyəti dəyişir və yeni vəziyyəti axınlar (Streams) vasitəsilə UI-ə geri göndərir. Bu, UI-nin vəziyyət dəyişikliklərinə birbaşa müdaxilə etmədən reaksiya verməsinə imkan verir.

Beləliklə, BLoC:

  • Vəziyyət idarə edilməsini mərkəzləşdirir.
  • Kodu daha modul və təkrar istifadə edilə bilən edir.
  • Biznes məntiqinin interfeysdən ayrılmasını və test edilməsini asanlaşdırır.

Sadələşdirilmiş BLoC nümunəsi:

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-ə abunə olur və hər sayğac dəyişdikdə yenilənir.