Solucionado (ver solução)
Solucionado
(ver solução)
7
respostas

Benefícios de usar var

Bom dia a todos,

Nesta aula, fiquei com uma dúvida, qual é a vantagem de se usar var ao invés de já declarar o tipo da variável?

Att Carlos

7 respostas
solução!

Oi Carlos

Realmente para casos simples não temos uma vantagem muito grande, o var é realmente útil quando temos um tipo de variável mais complicado como, por exemplo, KeyValuePair<string, Conta>, ao invés de escrevermos esse nome complexo, podemos simplesmente utilizar o var para simplificar a escrita do código. Além disso, no curso C# e tópicos avançados, você verá a biblioteca LINQ da linguagem que é muito vais fácil de utilizar com o var.

Mas claro que não podemos abusar dessa simplificação. A recomendação é só utilizar o var quando o tipo da variável estiver claro pelo contexto ou quando o tipo da variável não for importante para o entendimento do código, por exemplo:

var i = 5000;

Nesse caso fica claro que a variável i é do tipo int pelo contexto.

Carlos, embora a facilidade para nomear uma variável como tipo var seja relevante, ela em si não significa quase nada, para entender melhor o conceito dou uma dica para pesquisar por variáveis fortemente tipadas e fracamente tipadas. As vezes é necessário em uma aplicação que a tipagem da variável seja realizada em tempo de execução, desta forma a declaração do tipo var é extremamente necessária.

Oi Euler

A palavra var do C# não indica que uma variável possui tipagem fraca, ela continua tendo um tipo bem definido que é conhecido em tempo de compilação. Se você fizer, por exemplo:

var i = 10;
i = 100.0;

Esse código gera um erro de compilação, pois o tipo da variável i é inferido pelo compilador do C# como sendo int na primeira linha, mas na segunda estamos tentando guardar um valor do tipo double na variável inteira. O código seria equivalente a:

int i = 10;
i = 100.0;

Para deixar a tipagem da variável feita em tempo de execução, o C# possui um tipo chamado de dynamic. Utilizando esse tipo, as expressões são checadas apenas quando o código vai ser executado, ou seja, só temos exceções em tempo de execução e não erros de compilação. Já com o var o código é validado em tempo de execução, ou seja, temos tipagem forte e estática.

Oi Carlos

A sua dúvida foi resolvida?

Ou seja, "var" assume o tipo de acordo com o primeiro valor atribuído.

Exatamente.

Estava com essa duvida também.

Valeu pelo esclarecimento.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software