Buscar

Ferramentas

Flutter

Kit de desenvolvimento do Google para criar, com um só código em Dart, apps para Android, iOS, web, Windows, macOS e Linux.

  • Desenvolvimento
Flutter

Um só código em Dart, e o mesmo app sai para Android, iOS, navegador e desktop. Essa é a proposta do Flutter, SDK de interface que o Google mantém em código aberto. O Dart compila para código de máquina no celular e no computador, e para JavaScript ou WebAssembly na web.

Para que serve

  • Lançar um app para Android e iOS sem manter duas bases de código separadas.
  • Estender o mesmo produto a Windows, macOS e Linux, ou a uma versão web.
  • Ver cada alteração quase na hora com o hot reload, sem reiniciar o app nem perder o estado da tela.
  • Embutir a interface feita em Flutter dentro de um app que já existe em outra plataforma.

Como começar

A instalação recomendada passa pelo editor. Com o Git e o Visual Studio Code na máquina, adicione a extensão Flutter, que traz junto a do Dart. Na paleta de comandos, escolha Flutter: New Project, e o editor oferece baixar o SDK e colocá-lo no PATH. Depois, confira no terminal:

flutter doctor

O relatório mostra o que falta para cada plataforma. Avisos sobre Android Studio ou Xcode podem esperar até você compilar para Android ou iOS. Sem VS Code, o caminho é baixar o SDK manualmente.

Licença e custo

O Flutter adota a BSD de três cláusulas, que permite distribuir o SDK alterado e usá-lo até num app vendido. As condições são preservar o aviso de copyright e não usar o nome dos autores para promover o seu produto. O SDK é gratuito. O README avisa que a ferramenta baixa recursos de servidores do Google. Na instalação pelo VS Code, aparece ainda um pedido de consentimento para o Google Analytics.

Quando vale a pena

Com uma equipe pequena e prazo para Android e iOS ao mesmo tempo, aprender Dart compensa: é uma base de código no lugar de duas. A conta muda se o time inteiro já trabalha com React, porque o React Native reaproveita esse conhecimento. Para um app de uma plataforma só, preso a recursos específicos dela, Kotlin ou Swift nativos seguem como caminho mais direto.