トップのFlutter依存性注入と状態管理のパッケージ 状態管理は、アプリケーションのデータまたは状態を管理するプロセスを指します。つまり、アプリケーションで使用されるさまざまなデータの追跡と一貫性のある最新の状態を確保することです。状態管理は、異なる部分が予測可能で一貫した方法で連携することを確保するために、スケーラブルで保守性の高いアプリケーションの構築に重要な要素です。 一方、依存性注入は、疎結合なソフトウェアコンポーネントを作成するために使用される設計パターンです。依存性注入では、特定のコンポーネント(クラスや関数など)の依存関係は、内部的に作成または管理するのではなく、外部からコンポーネントに渡されます。これにより、コンポーネントをより簡単にテストしたり、異なるコンテキストで再利用したりできるようになり、アプリケーション内の異なるコンポーネント間の関係を管理するのが容易になります。 状態管理と依存性注入は別々の概念ですが、スケーラブルかつ保守性の高いアプリケーションを構築するために共に使用することができます。たとえば、状態管理システムを使用してアプリケーションのデータや状態を管理し、依存性注入を使用して状態管理システムと相互作用する疎結合のコンポーネントを作成することができます。 以下に、Flutterの依存性注入と状態管理の完全なリストを提供します。
flutter_bloc
6720
Flutterウィジェットにより、BLoC(ビジネスロジックコンポーネント)デザインパターンの実装が容易になります。bloc状態管理パッケージとの連携を前提としています。
mobx
1211
MobXは、アプリケーションの状態をリアクティブに管理するためのライブラリです。観測可能オブジェクト、アクション、反応を使用して、DartおよびFlutterアプリをスーパーチャージします。
bloc_concurrency
434
ember concurrencyに触発されたカスタムイベントトランスフォーマです。bloc state managementパッケージと一緒に使用するために作られました。
isolator
70
Isolatorは、分離されたパートとフロントエンドパートを持つ2つのコンポーネント状態(BLoC、MobX、ChangeNotifierなど)を作成するためのシンプルな方法を提供するパッケージです。
flutter_state_notifier
52
state_notifierに対するFlutterバインディング(StateNotifierProviderやStateNotifierBuilderなど)
fquery
37
FQuery is a powerful async state management solution for flutter. It caches, updates, and fully manages asynchronous data in your flutter apps.
angular_bloc
36
Angular Components that make it easy to implement the BLoC (Business Logic Component) design pattern. Built to be used with the bloc state management package.
mvvm_plus
36
MVVM+ is a lightweight Flutter implementation of MVVM, plus a locator for sharing states via a global registry (like GetIt) or inherited widgets (like Provider).
state_machine
35
Finite state machine library. Easily define legal state transitions. Listen to state entrances, departures, and transitions.
stream_bloc
33
Modern implementation of the Original BLoC that uses asynchronous generators to describe relationships between events and states.
vxstate
32
VxState is another state management solution for flutter. It is highly inspired by Redux & VueX.
redux_saga
31
redux_saga is a library that aims to make application side effects easier to manage, more efficient to execute, easy to test, and better at handling failures.
injecteo
31
Service locator for IoC pattern. Export annotations and abstract classes used by injecteo_generator.
rx_bloc_cli
26
rx_bloc_cli that enables quick project setup including: flavors, localization [intl], state management [rx_bloc], routing [go_router], design system, analytics [firebase], tests
flutter_bloc_devtools
26
flutter_bloc向けのリモートDevToolsです。このパッケージは全てのBlocをリモートDevToolsサーバーに接続し、開発者がランタイム中にBlocの変更を検査できるようにします。
stateful_props
21
Provides a simple way to reuse behaviors across StatefulWidgets. Improves readability and robustness of your components.
solace_flowz
20
state management package built on top of InheritedWidget, that aims to simplify the state management work for flutter developers and perform the task using minimal resources.
flutter_control
19
Flutter Control is a complex library to maintain App and State management, Dependency Injection, Navigation with Routing, Localization, and more..
provider_for_redux
16
Lets you use Provider with Redux. Uses AsyncRedux, the non-boilerplate version of Redux.
grab
13
A set of mixins and extension methods as an alternative to ListenableBuilder / ValueListenableBuilder, good for state management.