FLUTTER BLoC
HTML-код
- Опубликовано: 19 авг 2024
- BLoC significa Business Logic Components (Componentes de Lógica de Negócios). BLoC é um DESIGN PATTERN criado pelo Google visando separar a Lógica de Negócio da Camada de Design (Design Layer).
O BLoC permite aos desenvolvedores reutilização de código com mais facilidade.
A essência do BLoC é que tudo no aplicativo deve ser representado como um fluxo de eventos: Widgets enviam eventos e outros widgets responderão (states). BLoC fica no meio, gerenciando a conversa.
Conceitos do BLoC: Eventos e Estados
Eventos: (inputs) os eventos são entradas de um aplicativo (como um GestureDetector onTap() em um botão, entradas de texto, clique em um objeto ou qualquer entrada que o aplicativo possa receber).
Estados: os estados representam o estado do aplicativo, que pode ser alterado em resposta ao evento recebido.
Bloc gerencia os eventos e estados, pega um fluxo (stream) de eventos de entrada e os transforma em um fluxo de estados como saída (sink).
Vantagens do uso do BLoC
O BLoC facilita a separação da camada de apresentação da lógica de negócios, tornando seu código rápido, fácil de testar e reutilizável.
Muita documentação. Torna o produto mais testável.
Fácil de acompanhar os estados pelos quais um aplicativo passou.
Um dos melhores desempenhos - aplicativos rápidos e reativos.
Desvantagens: Um pouco mais demorado para aprender em relação ao setState ou Provider, requer arquivos adicionais de event, state e bloc.
O BLoC foi desenvolvido pensado em 3 fatores principais:
Simples: fácil de entender e pode ser usado por desenvolvedores com vários níveis de habilidade.
Poderoso: ajude a criar aplicativos incríveis e complexos, compondo-os de componentes menores.
Testável: teste facilmente todos os aspectos de um aplicativo para que possamos iterar com confiança.
Packages BLoC
Bloco consiste em vários pacotes de pub:
bloc - biblioteca do principal do BLoc
flutter_bloc - Widgets poderosos do Flutter criados para funcionar com o bloc para criar aplicativos móveis rápidos e reativos.
angular_bloc - Componentes Angular poderosos construídos para trabalhar com bloc para construir aplicações web rápidas e reativas.
Hydrated_bloc - Uma extensão para a biblioteca de gerenciamento de estado do bloco que persiste e restaura automaticamente os estados do bloco.
replay_bloc - Uma extensão para a biblioteca de gerenciamento de estado do bloco que adiciona suporte para desfazer e refazer.
BLoC significa Business Logic Components (Componentes de Lógica de Negócios). BLoC é um design patters criado pelo Google visando separar a Lógica de Negócio da Camada de Design (Design Layer).
Cubit é um subconjunto de Bloc; assim, reduz a complexidade. Cubit elimina as classes de eventos. Cubit usa emit em vez de yield para emitir o estado.
Como a emissão funciona de forma síncrona, você pode garantir que o estado seja atualizado na próxima linha.
Se você está desenvolvendo um aplicativo móvel usando o framework Flutter, o gerenciamento de estado é uma das principais preocupações que você precisa lidar. O Flutter BLoC é um dos padrões de arquitetura mais populares para gerenciamento de estado no Flutter.
O gerenciamento de estado é fundamental em aplicativos móveis, pois permite que a interface do usuário (UI) responda rapidamente às interações do usuário. O gerenciamento de estado bem projetado também ajuda a manter o código do aplicativo organizado e fácil de entender e manter.
Em resumo, o uso do Flutter BLoC para o gerenciamento de estado em aplicativos Flutter é uma abordagem poderosa e eficaz. Ele permite que você crie um aplicativo mais responsivo, escalável e fácil de manter, enquanto mantém a lógica de negócios e a interface do usuário separadas. Se você está desenvolvendo um aplicativo Flutter, vale a pena considerar a adoção do padrão de arquitetura BLoC para o gerenciamento de estado.
Flutter BLoC (Business Logic Component) é um padrão de arquitetura de gerenciamento de estado para o desenvolvimento de aplicativos móveis usando a framework Flutter. O Flutter BLoC é usado para separar a lógica de negócios do aplicativo da interface do usuário (UI), permitindo que a UI e a lógica de negócios sejam desenvolvidas independentemente.
O Flutter BLoC funciona usando dois conceitos principais: eventos (Events) e estados (States). Os eventos representam ações que o usuário toma na interface do usuário, como pressionar um botão ou inserir informações em um formulário. Os estados representam o estado atual do aplicativo após o processamento do evento correspondente.
#flutter #bloc
Se inscrevam no grupo de telegram do Curso de Flutter e Dart:
t.me/cursoflutter
Playlist do Curso de Flutter e Dart:
ruclips.net/video/fgloD9-8GNE/видео.html
Código-fonte:
github.com/davesbalthazar/curso-de-flutter-bloc/
Conheça alguns Apps feitos em Flutter
play.google.com/store/apps/developer?id=Daves+Tecnologia
Muito Bom todo seu curso
@davestecnologia você poderia fazer um playlist top como tem feito, com o Cubit e o emit - para emitir os estados e o GetIt para criar módulos, resolvendo as injeções de dependcia e as rotas por módulos. Parabéns por todos os conteúdos.
Ótima aula!!
Didática excelente... quando a gente começa a ter duvida, você já vai lá e responde.. entende direitinho como a mente de quem tá aprendendo funciona... parabéns professor!!
Excelente vídeo, adorei!
Tenho acompanhado seus videos desse curso de Flutter e estão muito bons, parabéns. Porém este video especificamente ficou bem confuso, principalmente por volta do minuto 22:40 aonde vc editou muito o video corrigindo a forma de montar o arquivo user_bloc.dart. Talvez uma sugestão aqui seria trabalhar um pouco mais na edição do video. Um abraço!
Ótima aula amigo! Referente ao "part of", se eu somente usar a importação padrão e sem utilizar o part of, funcionaria do mesmo modo?