Junior — Middle
Flutter колдонмолорунда абалды башкарууда BLoCтин негизги ролу эмне?
sobes.tech AI
AIден жооп
Flutter-дөгү абал башкарууда BLoC (Business Logic Component) негизги ролу — бизнес логиканы UI-дан бөлүп, таза архитектураны камсыз кылуу жана тестти жеңилдетүү.
BLoC UI-дан окуяларды (events) кабыл алат, аларды иштетет, абалды өзгөртөт жана жаңы абалды кайра UI-га кайтарат through Streams. Бул UI-га абалдын өзгөрүшүнө реакция кылууга мүмкүндүк берет, түз аралашпастан логикага.
Ошентип, BLoC:
- Абал башкарууну борборлоштурат.
- Кодду көбүрөөк модулдуу жана кайра колдонулмалу кылат.
- Бизнес логиканы интерфейстен көз карандысыз тесттөөнү жеңилдетет.
Жөнөкөйлөштүрүлгөн BLoC мисалы:
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-ге жазылат жана ар бир санагычтын өзгөрүшүндө жаңыланат.