Junior — Middle
BLoC memarlıq nümunəsi ilə bağlı bilik və təcrübə səviyyənizi necə qiymətləndirirsiniz?
sobes.tech Süni İntellekt
AI-dan cavab
BLoC (Business Logic Component) — Flutter-da geniş istifadə olunan memarlıq nümunəsidir, biznes məntiqi və UI-ni ayırmağa imkan verir. Bu, məlumat axınları (Streams) və reaktiv proqramlaşdırmaya əsaslanır.
Nümunə:
- Widget-lərdən məntiqi ayırmaq.
- Hadisələr və vəziyyət axınları vasitəsilə vəziyyəti idarə etmək.
- Kodun test ediləbilərliyi və yenidən istifadə olunmasını təmin etmək.
Tipik BLoC-də:
- Giriş hadisələri (Sink), UI tərəfindən BLoC-ə göndərilir.
- UI-nin abunə olduğu və interfeysi yeniləmək üçün istifadə olunan vəziyyət axını (Stream).
Sadə 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();
}
}
Orta mürəkkəbli tətbiqlərdə vəziyyəti idarə etmək üçün BLoC istifadə edirəm, burada məntiq və UI-nin aydın şəkildə ayrılması vacibdir və həmçinin biznes məntiqinin test edilməsini asanlaşdırır.