Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Var e Dynamic no Flutter

Artigo Dart com var e dynamic

Var e Dynamic no Flutter


Compreendendo as Diferenças e Aplicações de “Var” e “Dynamic” no Flutter

O cenário do desenvolvimento de aplicativos móveis está em constante evolução, e o framework Flutter se destaca nesse contexto. A princípio ao lidar com variáveis no Flutter, duas palavras-chave cruciais são “var” e “dynamic”. Neste artigo, exploraremos as diferenças essenciais entre esses dois conceitos e como eles encontram aplicação no desenvolvimento de aplicativos.

Var: Flexibilidade Estática

Desenvolvedores frequentemente empregam a palavra-chave “var” para declarar variáveis com tipos inferidos estaticamente. Contudo isso implica que durante a compilação, o compilador determina o tipo da variável baseando-se no valor atribuído a ela. Porque essa abordagem oferece considerável flexibilidade e concisão ao código, poupando tempo e esforço que seriam gastos na declaração de tipos explícitos.

Para armazenar um número inteiro, você pode declarar uma variável usando a palavra-chave “var” da seguinte maneira:

var idade = 25;

Dynamic: Adaptabilidade em Tempo de Execução

No Flutter, o tipo de variável “dynamic” tem seu tipo definido em tempo de execução. Se estivermos lidando com dados provenientes de uma API externa, não temos certeza quanto ao tipo de dado que será recebido. Porque nesse cenário, podemos empregar “dynamic” como mostrado abaixo:

dynamic dado = obterDadosDaAPI();

Var e Dynamic na Prática: Encontrando Equilíbrio

Ao desenvolver aplicativos no Flutter, é imperativo alcançar um equilíbrio no uso de “var” e “dynamic”, visando à clareza do código e desempenho otimizado. Em suma utilizar “var” em cenários em que o tipo da variável pode ser inferido com segurança durante a compilação é uma prática recomendada, elevando a legibilidade do código.

Em contraste, é sensato restringir o uso de “dynamic” a situações em que não é possível determinar antecipadamente o tipo da variável, como ao tratar com dados externos ou em casos de uso altamente dinâmicos.

Conclusão

Em síntese, a compreensão das nuances entre “var” e “dynamic” é vital para criar código eficaz e compreensível no Flutter. Enquanto “var” confere flexibilidade estática ao inferir o tipo da variável na compilação, “dynamic” proporciona adaptabilidade durante a execução, apesar de seu possível impacto no desempenho. Enfim ao aplicar esses conceitos de maneira equilibrada, os desenvolvedores podem criar aplicativos Flutter robustos e eficientes, que atendem às exigências de um cenário móvel em constante transformação.

void main() {
  // Declarando uma variável var
  var nome = "Bill";

  // Declarando uma variável dynamic
  dynamic idade = 25;

  // Imprimindo o tipo da variável nome
  print(nome.runtimeType); // String

  // Imprimindo o tipo da variável idade
  print(idade.runtimeType); // int

  // Alterando o tipo da variável idade
  idade = "25 anos";

  // Imprimindo o novo tipo da variável idade
  print(idade.runtimeType); // String
}

Neste exemplo, a variável nome é declarada como var, o que significa que ela pode armazenar qualquer tipo de valor. No início, ela é inicializada com o valor "Bill", que é uma string. Sendo, o seu valor impresso, com o tipo da variável String.

A variável idade é declarada como dynamic, o que significa que ela pode armazenar qualquer tipo de valor, incluindo strings, números, objetos, etc. Sendo inicializada com o valor 25, que é um número inteiro.

Por fim, o tipo da variável idade é alterado para uma string.

Assine nossa newsletter

Seja avisado sempre que surgir conteúdo novo

Blog mundo dev Mobile - Copyright © 2023 - Todos os Direitos Reservados.