패키지, 저장소 및 앱 카테고리 검색

패키지 상세v0.3.0

bloc_concurrency

ember concurrency를 영감으로 삼은 사용자 정의 이벤트 변환기입니다. bloc 상태 관리 패키지와 함께 사용하도록 설계되었습니다.

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
77만
좋아요
594
Pub 점수
160

패키지 설치

flutter pub add bloc_concurrency

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

bloc_concurrency는 Ember Concurrency를 영감으로 삼아 Bloc에서 이벤트 처리 방식에 대한 세밀한 제어를 가능하게 하는 사용자 정의 이벤트 변환기를 제공합니다. 취소, 타이밍 제한, 디바운싱 등의 기능을 통해 비동기 작업을 효과적으로 관리하여 상태 관리 효율성을 높입니다. Bloc 라이브러리와 함께 사용하기 위해 특별히 설계되었으며, 다양한 플랫폼에서 빠르거나 겹치는 이벤트를 처리할 때 경쟁 조건을 방지하고 예측 가능한 상태 전이를 보장합니다.

사용 사례

  • 빠른 사용자 입력 처리
  • 취소를 사용하여 비동기 작업 관리
  • 상태 업데이트에서 레이스 조건 방지
  • 자주 발생하는 이벤트 제한
  • 디바운싱 검색 쿼리
  • 네트워크 요청 시퀀스 최적화

주요 기능

  • 이벤트 변환 지원
  • 보류 중인 이벤트 취소
  • 스로틀링 및 디바운싱
  • 경쟁 조건 방지
  • Bloc 라이브러리와의 통합
  • 크로스 플랫폼 호환성

적합한 대상

  • 상태 관리에 Bloc을 사용하는 개발자
  • 고주파 이벤트 스트림을 가진 앱
  • 복잡한 비동기 워크플로우
  • 실시간 데이터 처리
  • 성능 중심 애플리케이션
  • 예측 가능한 상태 동작이 필요한 팀

고려 사항

  • Bloc 패턴에 익숙해야 합니다
  • Bloc 외부에서 독립적인 유틸리티는 제한적
  • 간단한 앱에 대한 복잡성을 증가시킬 수 있습니다
  • 최적의 결과를 얻으려면 신중한 구성이 필요합니다
  • 동기 전용 워크플로우에는 적합하지 않습니다
  • 다른 Bloc 기능과 함께 사용할 때 가장 효과적입니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

Bloc

build codecov Star on Github style: bloc lint Flutter Website Awesome Flutter Flutter Samples License: MIT Discord Bloc Library


A predictable state management library that helps implement the BLoC design pattern.

Package Pub
angular_bloc pub package
bloc pub package
bloc_concurrency pub package
bloc_lint pub package
bloc_test pub package
bloc_tools pub package
flutter_bloc pub package
hydrated_bloc pub package
replay_bloc pub package

Sponsors

Our top sponsors are shown below! [Become a Sponsor]


Overview

Bloc Architecture

The goal of this library is to make it easy to separate presentation from business logic, facilitating testability and reusability.

Documentation

Migration

Examples

Dart
  • Counter - an example of how to create a CounterBloc (pure dart).
Flutter
  • Counter - an example of how to create a CounterBloc to implement the classic Flutter Counter app.
  • Form Validation - an example of how to use the bloc and flutter_bloc packages to implement form validation.
  • Bloc with Stream - an example of how to hook up a bloc to a Stream and update the UI in response to data from the Stream.
  • Complex List - an example of how to manage a list of items and asynchronously delete items one at a time using bloc and flutter_bloc.
  • Infinite List - an example of how to use the bloc and flutter_bloc packages to implement an infinite scrolling list.
  • Login Flow - an example of how to use the bloc and flutter_bloc packages to implement a Login Flow.
  • Firebase Login - an example of how to use the bloc and flutter_bloc packages to implement login via Firebase.
  • Github Search - an example of how to create a Github Search Application using the bloc and flutter_bloc packages.
  • Weather - an example of how to create a Weather Application using the bloc and flutter_bloc packages. The app uses a RefreshIndicator to implement "pull-to-refresh" as well as dynamic theming.
  • Todos - an example of how to create a Todos Application using the bloc and flutter_bloc packages.
  • Timer - an example of how to create a Timer using the bloc and flutter_bloc packages.
  • Shopping Cart - an example of how to create a Shopping Cart Application using the bloc and flutter_bloc packages based on flutter samples.
  • Dynamic Form - an example of how to use the bloc and flutter_bloc packages to implement a dynamic form which pulls data from a repository.
  • Wizard - an example of how to build a multi-step wizard using the bloc and flutter_bloc packages.
  • Bloc Concurrency Visualizer - an example of visualizing the various bloc_concurrency transformers.
  • Fluttersaurus - an example of how to use the bloc and flutter_bloc packages to create a thesaurus app -- made for Bytconf Flutter 2020.
  • I/O Photo Booth - an example of how to use the bloc and flutter_bloc packages to create a virtual photo booth web app -- made for Google I/O 2021.
  • I/O Pinball - an example of how to use the bloc and flutter_bloc packages to create a pinball web app -- made for Google I/O 2022.
  • I/O Holobooth - an example of how to use the bloc and flutter_bloc packages to create a virtual photobooth experience -- made for Flutter Forward.
  • I/O Flip - an example of how to use the bloc, flutter_bloc, and flame_bloc packages to create a card game -- made for Google I/O 2023.
Web
  • Counter - an example of how to use a CounterBloc in an AngularDart app.
  • Github Search - an example of how to create a Github Search Application using the bloc and angular_bloc packages.
Flutter + Web
  • Github Search - an example of how to create a Github Search Application and share code between Flutter and AngularDart.

Articles

Books

  • Flutter Complete Reference - A book about the Dart programming language (version 2.10, with null safety support) and the Flutter framework (version 1.20). It covers the bloc package (version 6.0.3) in all flavors: bloc, flutter_bloc hydrated_bloc, replay_bloc, bloc_test and cubit.

Extensions

  • IntelliJ - extends IntelliJ/Android Studio with support for the Bloc library and provides tools for effectively creating Blocs for both Flutter and AngularDart apps.
  • VSCode - extends VSCode with support for the Bloc library and provides tools for effectively creating Blocs for both Flutter and AngularDart apps.

Community

Learn more at the following links, which have been contributed by the community.

Packages
Video Tutorials
Written Resources
Extensions

Maintainers

카테고리

의존성

의존성 목록 2 개

소스 저장소

이 패키지를 사용하는 프로젝트

순위