Memória e desempenho
Memory leaks, dispose, DevTools profiler, reconstruções de widgets, const constructors, keys
1Qual método deve ser chamado em dispose() para evitar um vazamento de memória com um AnimationController?
Qual método deve ser chamado em dispose() para evitar um vazamento de memória com um AnimationController?
Resposta
O método dispose() do AnimationController libera os recursos associados ao controlador de animação, incluindo os listeners e os timers internos. Sem essa chamada, o controlador continua rodando em segundo plano mesmo após a destruição do widget, causando um vazamento de memória e potencialmente erros se o controlador tentar atualizar um widget removido.
2Qual ferramenta do Flutter DevTools permite identificar vazamentos de memória?
Qual ferramenta do Flutter DevTools permite identificar vazamentos de memória?
Resposta
O Memory Profiler do Flutter DevTools oferece uma visão detalhada do uso de memória da aplicação. Ele permite capturar snapshots do heap, analisar os objetos em memória, detectar as instâncias que não são coletadas pelo garbage collector e identificar as referências que impedem a liberação de memória.
3Como reduzir as reconstruções desnecessárias de um widget no Flutter?
Como reduzir as reconstruções desnecessárias de um widget no Flutter?
Resposta
Usar const antes dos construtores de widgets permite ao framework reutilizar a mesma instância em vez de criar uma nova a cada build. Isso evita as reconstruções desnecessárias porque o Flutter reconhece que o widget não mudou. Os widgets const são criados em tempo de compilação e mantidos em memória para serem reutilizados.
Qual é a causa principal de um vazamento de memória com um StreamController?
Qual tipo de Key usar para otimizar o desempenho de uma ListView com itens reordenáveis?
+19 perguntas de entrevista
Outros temas de entrevista Flutter
Fundamentos de Dart
Fundamentos da linguagem Dart
Fundamentos do Flutter
Ciclo de vida dos Widgets
Armazenamento local
Ciclo de vida do aplicativo
Layouts & Constraints
ListView & GridView
Navegação e roteamento
Gerenciamento de estado básico
Provider Pattern
Networking & HTTP
Serialização JSON
Banco de dados local
Formulários e validação
Animações
Integração com Firebase
Testes unitários
Testes de widgets
Build e Deploy
Gerenciamento de pacotes
Streams & RxDart
State Management avançado
Flutter Design Patterns
Otimização de desempenho
Platform Channels
Custom Painting
Arquitetura de aplicativos Flutter
Domine Flutter para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis