Flutter cancelou a feature que todo mundo queria: e isso é bom sinal

Dart macros foi arquivado depois de 2 anos de promessas. Impeller finalmente funciona. E a Google quer transformar Flutter no framework para 'apps agenticos'. O que está realmente acontecendo?

A Google fez algo raro em janeiro: admitiu derrota. Depois de mais de dois anos desenvolvendo macros para Dart, a equipe anunciou que está abandonando a feature. Motivo? Performance inaceitável. Hot reload ficava frio. E ninguém sabe como consertar.

Se você acompanha Flutter de perto, isso doeu. Macros era a solução mágica para serialização JSON, data classes, código boilerplate — tudo que o Dart faz você escrever manualmente enquanto Kotlin e Swift automatizam. A comunidade esperou. Esperou. E agora: não vai acontecer.

Mas aqui está o plot twist: talvez esse seja o melhor sinal de saúde do Flutter em anos.

O cancelamento que ninguém viu vindo

A decisão veio do diretor de engenharia do Dart, Vijay Menon, em post direto e sem floreios:

“Cada vez que resolvíamos um obstáculo técnico major, surgiam novos. Neste ponto, não estamos vendo macros convergir para algo que nos sintamos confortáveis em lançar.”

O problema não era falta de vontade. O time investiu recursos significativos. A abordagem era ambiciosa: introspection semântica profunda em tempo de compilação — não apenas transformação de sintaxe como outras linguagens, mas análise real do código. Só que isso introduzia custos tão grandes que quebravam uma das promessas fundamentais do Flutter: stateful hot reload.

E aqui está a verdade inconveniente: a Google teve duas opções:

  1. Lançar macros lentas e ouvir a comunidade reclamar por anos
  2. Matar a feature e focar no que funciona

Eles escolheram a segunda. Por mais frustrante que seja, isso é risco calculado — algo que empresas maiores frequentemente falham em fazer.

O que realmente importa: Impeller funciona

Enquanto o time do Dart cancelava macros, o time do Flutter consolidava a maior transição técnica da história do framework: Impeller está 100% ativo no iOS.

Para quem não lembra: Skia, o motor gráfico anterior, compilava shaders em tempo de execução (JIT). Primeira animação complexa? Frames perdidos. Scroll pesado? Stutter. Era o “shader compilation jank” que assombrava Flutter desde sempre.

Impeller pré-compila shaders no build (AOT). Resultados reais de benchmarks independentes:

  • 30-50% redução em frames perdidos em animações complexas
  • 20-40% melhoria em renderização de texto
  • Skia: 12% de frames dropados vs Impeller: 1.5%

No SynergyBoat benchmark 2025, Flutter com Impeller ultrapassou React Native em praticamente todas as métricas de performance gráfica. E no Android API 29+, Impeller é o default — opt-out para Skia está deprecated.

Isso é maturidade. Flutter deixou de ser o framework promissor para ser o framework que funciona em produção.

O pivot para “agentic apps”

Mas aqui é onde a história fica interessante. Com Impeller resolvido, a Google está fazendo uma aposta audaciosa: Flutter como framework para “agentic apps” — aplicações onde a IA determina o estado da UI e o Flutter renderiza.

No Google I/O 2025, a empresa apresentou:

  • GenUI SDK (alpha): LLMs populam UI usando catálogos de widgets Flutter ao invés de responder com texto
  • Flutter AI Toolkit (v1.0, dezembro): widgets de chat pré-construídos, function calling multi-turn, speech-to-text
  • Dart & Flutter MCP Server: agentes de IA navegando codebases e fazendo refactors multi-step

A narrativa mudou de “framework cross-platform” para “interface entre humanos e IA”. Segundo a Google, 98% dos trabalhadores já usam IA não-sancionada, 80% usam apps não-verificados, 50% compartilham dados sensíveis com chatbots. A aposta é que Flutter se torne a camada de apresentação padrão para essa nova geração de aplicações.

Os números não mentem

Apesar dos memes de “Flutter está morrendo”, os dados mostram o contrário:

  • 30% dos novos apps gratuitos no iOS agora são Flutter (contra ~10% em 2021)
  • 1 milhão de desenvolvedores ativos (dados da Google)
  • Framework cross-platform mais usado pelo 4º ano consecutivo (JetBrains survey)
  • 8 releases estáveis em 2025 (ritmo trimestral mantido)

Eric Seidel, cofundador do Flutter e agora CEO da Shorebird, resumiu bem:

“Flutter está ‘morrendo’ ou ‘prestes a ser cancelado’ desde que começamos o projeto há 10 anos. Se 1/3 dos apps submetidos à AppStore é o que ‘morrendo’ parece, estou dentro.”

O dedo na ferida

Vamos ser honestos sobre o que o cancelamento das macros revela:

  1. Hot reload é sagrado: O time do Dart tentou quebrar esse princípio e descobriu que não pode. A feature que define a experiência Flutter não é negociável.

  2. Freezed e build_runner não morreram: Com macros canceladas, packages de code generation continuam sendo necessários. O time prometeu melhorar performance do build_runner (2× em alguns cenários), mas código gerado continua sendo parte da realidade Dart.

  3. Dot shorthands não compensa: A feature que chegou (escrever .center ao invés de MainAxisAlignment.center) é conveniente, mas é comfort food — não resolve problemas reais de produtividade.

  4. A aposta em IA pode ser hype: GenUI SDK está em alpha. Flutter AI Toolkit acabou de sair. A transição para “agentic apps” soa como narrativa de marketing mais do que demanda real dos desenvolvedores.

  5. Layoffs de 2024 deixaram marcas: ~200 funcionários das equipes core afetados. O ritmo de 8 releases em 2025 mostra continuidade, mas a tensão entre promessa e entrega está mais visível.

Checklist para 2026

Se você usa Flutter em produção:

Faça já:

  • Migre para Impeller se ainda não fez (Skia foi removido do iOS)
  • Audit dependencies para preparar o desacoplamento Material/Cupertino
  • Teste Flutter AI Toolkit se estiver planejando features de IA

Acompanhe:

  • Augmentations (feature que sobreviveu do projeto de macros)
  • Melhorias no build_runner performance
  • Evolução do GenUI SDK

Não perca tempo esperando:

  • Dart macros (morto)
  • Solução nativa para data classes (vai demorar)
  • Flutter como “a próxima grande coisa” — ele já é grande, só isso

O grande quadro

Flutter está em uma posição estranha: técnicamente mais sólido do que nunca, mas narrativamente confuso. Impeller resolveu problemas reais de performance. A base de desenvolvedores cresceu. O framework é usado em produção por apps que você usa todo dia.

Mas o cancelamento das macros deixa uma ferida: a comunidade queria produtividade, recebeu promessas, e agora precisa lidar com code generation por mais anos.

A aposta em IA pode ser o futuro. Ou pode ser a Google tentando manter Flutter relevante em um mundo onde cada semana traz um novo framework JavaScript que promete revolucionar tudo.

A boa notícia? Pelo menos agora sabemos que o time do Dart sabe dizer “não”. Em um ecossistema onde empresas frequentemente dobram apostas em features quebradas, isso é quase revolucionário.


Fontes