Visão geral
O pacote nil fornece um widget mínimo e otimizado para desempenho que não renderiza nada quando incluído na árvore de widgets. Foi projetado para cenários em que você precisa de um espaço reservado ou widget condicional que não contribui para o custo de layout ou renderização. Diferentemente de SizedBox.shrink() ou Container(), o nil não tem impacto algum no desempenho da árvore de widgets e é ideal para lógica de IU dinâmica onde as condições de visibilidade são tratadas externamente. É leve e seguro para uso em interfaces complexas ou frequentemente atualizadas.
Casos de uso
- Renderização condicional sem saída visual
- Substituindo contêineres vazios em layouts dinâmicos
- Otimizando o desempenho em árvores de widgets grandes
- Simplificando verificações de nulo na composição de widget
- Evite cálculos de layout desnecessários
Principais recursos
- Custo zero de renderização
- Sem impacto no layout
- Péssimo uso de memória
- API simples
- Seguro para atualizações frequentes
Indicado para
- Desenvolvedores otimizando o desempenho da interface do usuário
- Construtores de interfaces dinâmicas ou condicionais
- Equipes que priorizam o menor overhead
- Aplicativos com árvores de widgets complexas ou aninhadas
- Aqueles que buscam uma alternativa limpa aos widgets vazios
Considerações
- Não adequado para conteúdo visível
- Não suporta widgets filhos
- Único útil quando intencionalmente renderizar nada
- Não necessário se usar construções internas seguras contra nulos
- Melhor usado em conjunto com lógica condicional