BLoC uses the concept of Streams, or Reactive programming. This means that when a stream of events is created, subscribers can listen in on the stream of events . The subscribers are notified of new data when it is emitted into the stream. Widgets in Flutter use this stream for communication and sending data.
Read moreWhy use freezed?
Well, freezed can be used for both data classes and unions! This means you’ll get automatically generated value equality, copyWith , exhaustive switch, and even JSON serialization support from one place ! Basically you get built_value and sum_types without all the weirdness and boilerplate.
Read more