Desenvolvendo em Flutter? Essas bibliotecas podem facilitar sua vida

erick anjos de lima
5 min readFeb 25, 2021

--

Para quem ainda está cru em desenvolvimento de software, pode estar se perguntando: O que é uma biblioteca? Ja vou adiantando, não é essa da foto acima. Quando você escreve um programa usando alguma linguagem de programação, existe a possibilidade de você usar um conjunto de funções pré-escritas por outros programadores que já resolveram ou resolvem determinados problemas para você sem que você precise reinventar a roda. Esse conjunto de funções é conhecido como: BIBLIOTECA, do inglês, library, ou como muitos abreviam: Lib. Muitos traduzem como livraria, isso dificulta a compreensão pois livraria é uma LOJA DE LIVROS enquanto biblioteca é um conjunto de livros que você pode usar sem precisar pagar.

Eu sei que existem milhares de bibliotecas úteis para Flutter disponíveis no Pub.dev que podem ajudar os desenvolvedores em cada etapa do desenvolvimento. Aqui estão algumas das bibliotecas de flutter que, em minha humilde opinião, todo desenvolvedor deve conhecer. Bora la?.

Dio

O framework Flutter oferece um pacote http que funciona muito bem quando precisamos fazer coisas básicas. Quando precisamos fazer algo mais avançado, precisamos de algo maior. E isso pode ser feito usando o Dio.

Dio é uma biblioteca de conexão http que possui recursos extras, como interceptores que serão úteis em muitas tarefas (adicionar autenticação de token para cada solicitação, registrar solicitações). Dio API é muito fácil e a biblioteca está sendo mantida pelos autores. Vale a pena tentar.

cached_network_image

O próprio nome ja diz muito sobre ela: Uma biblioteca Flutter para mostrar imagens da Internet e mantê-las no diretório de cache.

CachedNetworkImage pode ser usado diretamente ou por meio do ImageProvider. Tanto CachedNetworkImage quanto CachedNetworkImageProvider têm suporte mínimo para web. Atualmente não inclui cache.

font_awesome_flutter

Em algum momento você vai precisar de um determinado ícone em sua jornada de desenvolvimento e o pacote padrão ícones do Flutter pode não sei o suficiente. É ai que entra esse cara ai, um pacote de ícones do Font Awesome disponível como conjunto de Flutter Icons.

Baseado em Font Awesome 5.15.1. Inclui todos os ícones gratuitos:

  • Regular
  • Solid
  • Brands

A biblioteca sugere que você use FaIcon pois ele assume que todos os ícones são quadrados, mas muitos ícones de fontes incríveis não são.

https://pub.dev/packages/font_awesome_flutter

path_provider

Este é um plugin Flutter para encontrar locais comumente usados ​​no sistema de arquivos. Suporta iOS, Android, Linux e MacOS. Nem todos os métodos são suportados em todas as plataformas.

frefresh

Essa bibliotecas ira ajudá-lo a construir atualização pull-down e carregamento pull-up da maneira mais simples.

Embora seja simples o seu desenvolvimento, o efeito é incrível. Ele também suporta atualização de configuração e elementos de loading. A biblioteca permite que você ajude a controlar todo o processo dinamicamente.

url_launcher

Um plugin Flutter te ajudar em tarefas que necessitam abrir URLs no aplicativo. Suporta iOS, Android, web, Windows, macOS e Linux.

https://pub.dev/packages/url_launcher

Hive

Hive é um banco de dados do tipo chave-valor, leve e extremamente rápido feito em Dart puro. Essa é a descrição que você encontra no pub.dev e documentação do projeto.

Como o hive trabalha

O hive utiliza o conceito de caixas para armazenar os dados. Uma caixa pode ser comparada com uma tabela do SQL, mas as caixas não tem uma estrutura fixa e podem conter qualquer coisa.

Vantagens

O hive se apresenta como uma opção extremamente vantajosa em relação as outras opções de persistência de dados no Flutter, o conhecido shared_preferences e o SQLite por dois motivos:

O primeiro, atualmente o shared_preferences não funciona na plataforma web pois encapsula os nativos NSUserDefaults no iOS e SharedPreferences no Android.

E o segundo, o desempenho do hive é muito superior ao SQLite tanto em leitura quanto escrita. Em relação ao shared_preferences, os dois são equiparáveis em leitura, porém o hive ganha na escrita.

Benchmark apresentado na documentação

A diferença na escrita é bem grande, mas você não precisa acreditar nos resultados apresentados na documentação, você mesmo pode executar o benchmark.

Fonte: https://medium.com/flutter-comunidade-br/flutter-o-que-%C3%A9-e-como-utilizar-o-banco-de-dados-hive-2839f9ada04f

get_it

Este é um Service Locator simples para projetos Dart e Flutter com alguns itens adicionais altamente inspirados por Splat . Ele pode ser usado em vez de InheritedWidgetou Providerpara acessar objetos, por exemplo, de sua IU.

Uso típico:

  • Acessando objetos de serviço como clientes ou bancos de dados REST API para que possam ser facilmente simulados.
  • Acessando View / AppModels / Managers / BLoCs a partir de visualizações Flutter

Por que GetIt? Conforme o seu aplicativo cresce, em algum momento você precisará colocar a lógica do seu aplicativo em classes que são separadas de seus Widgets. Impedir que seus widgets tenham dependências diretas torna seu código mais organizado e mais fácil de testar e manter.

Exemplo de uso:

--

--

erick anjos de lima

Aquele cara de tecnologia que desenvolve sistemas utilizando plataformas C, C++, C#, NodeJs, Python, Golang e mobile Android e Flutter http://erick-adl.com/