DEV Community

Cover image for Boas práticas em Flutter
Henrique Pomatti dos Santos
Henrique Pomatti dos Santos

Posted on

1

Boas práticas em Flutter

Então aqui vamos com algumas boas práticas voltadas ao Flutter, já tinha esse documento de forma interna porém é algo interessante a ser compartilhado!

Configuração do projeto

  • Flutter e Dart latest sempre que possível;

  • Configuração do lint para o Flutter;

  • Checar versão do Flutter e do Dart antes do build para evitar erro;

  • Testes unitários com coverage configurado no repositório;

  • Testes de Widgets também são importantes;

  • Prática de versionamento com branches, utilizando Feature Branch;

  • Todo MR (Merge Request) deve ter no mínimo testes para o Happy Path;

Frameworks

  • Uso do Flutter Lint;

  • Uso do GetX como gerenciador de estados;

  • Clean Architecture;

  • Firebase Core para conexão com o Firebase;

  • Biometric Storage para salvar biometria de usuário no seu acesso ao app.

  • Flutter Secure Storage para salvar dados no dispositivo do usuário, de forma que torne a experiência do usuário com um desempenho melhor.

  • Utilização do HTTP e do DIO para realizar as chamadas de API e comunicações HTTP.

Considerações arquiteturais

  • Pasta lib com o código do projeto;

  • Pasta test com o código de testes do projeto;

  • Pasta fonts com as fontes do projeto;

  • Pasta assets com as imagens, ícones, textos do projeto;

  • Pasta build com o bundle se existir;

  • Arquivo pubspec.yaml no root do projeto para configuração das bibliotecas;

  • Tentar separar módulos por features/entidades;

  • Testes sempre referenciando o mesmo nível de pastas do código da Lib.

  • Utilização de nomes de classes, variáveis e afins sempre tendo referência aos conceitos do negócio, de maneira descritiva e clara e deixando explícita sua intenção, como sugere o Clean Code.

  • Criação de nomes e afins sempre em inglês.

  • Utilização do conceito de Clean Architecture;

Monitoramento

Clean Architecture

Valeu mais uma vez pessoal!

Top comments (0)