C# (C Sharp)

var en C# – usos y ejemplos

Usos y explicación de var en C#

Ejemplos de var en C#. Cuándo usar, cómo usar y razones para usar.

A partir de la versión 3 de C# se puede usar la palabra reservada var, que me recuerda un poco a Kotlin, Go, y JavaScript.

En este post te voy a mostrar cómo usar var, cuál es su propósito, cuándo usarla y cuándo no.

Uso de var en C#

Usamos var cuando deseamos declarar una variable pero no queremos indicar el tipo de dato, y dejamos que el compilador lo infiera. Algo así como el duck typing.

Ya que declarar así:

int edad = 5;

Es lo mismo que:

var edad = 5;

Veamos el ejemplo. Con var en C# es así:

using System;

class MainClass {
  public static void Main (string[] args) {
    var edad = 5;
    Console.WriteLine(edad);
  }
}

Y cuando ponemos el tipo (int), también funciona:

using System;

class MainClass {
  public static void Main (string[] args) {
    int edad = 5;
    Console.WriteLine(edad);
  }
}

Por lo tanto, hablando del lenguaje (y no de los paradigmas o buenas prácticas) es lo mismo declarar con var que con el tipo de dato, ya que el compilador infiere el tipo a partir del valor.

Restricciones de var

Aunque parezca que gracias a var se pierde el tipado fuerte de C# la realidad es que no, ya que el compilador infiere el tipo, y le asigna el tipo a esa variable pero más tarde ya no se puede cambiar.

Es decir, lo siguiente es erróneo:

var nombre = "Luis";

nombre = 3;

Ya que nombre, aunque fue declarado con var, es un string.

Otra restricción es que cuando usamos var debemos declarar inmediatamente el valor, no podemos dejarla declara así:

var nombre;

¿Cuándo usar var en c#?

Ahora sí dejamos la parte técnica y vamos a los paradigmas. Recomiendo usar var cuando se declare una variable local y simple. Por ejemplo:

var nombre = "Luis";

Y recomiendo evitarlo cuando el tipo no se pueda inferir por el ser humano. Por ejemplo:

var ubicacion = usuario.obtenerUbicacion();

Ahí, aunque estamos obteniendo la ubicación de un usuario, ¿qué tipo de dato estamos recibiendo? ¿Es un objeto de tipo LatitudLongitud? ¿Son las coordenadas como cadena? ¿No es la ubicación GPS?

Para el caso de arriba, suponiendo que es la latitud y longitud de las coordenadas, podríamos hacer esto:

LatitudLongitud ubicacion = usuario.obtenerUbicacion();

Y en el peor de los casos, si queremos usar var forzosamente, al menos deberíamos escribir un nombre descriptivo. Por ejemplo:

var latitudLongitudUsuario = usuario.obtenerUbicacion();

Conclusión

En conclusión usar var cuando sean variables sencillas, fáciles de inferir por el ser humano y no ambiguas.

No te preocupes, usar var no hará que haya errores de programación, pues el compilador seguirá funcionando como siempre.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

17 horas hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

1 semana hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

1 semana hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

1 semana hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

1 semana hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

1 semana hace

Esta web usa cookies.