Tuplas en C#
Las tuplas en C# permiten agrupar múltiples valores en una sola estructura ligera sin tener que crear clases o structs personalizados. Son muy útiles para devolver múltiples valores desde métodos de forma clara y concisa. Desde C# 7, la sintaxis de tuplas es más potente y legible gracias al soporte nativo con nombres de campos.
Declarar y usar tuplas
Puedes crear tuplas con valores nombrados o posicionales.
var tupla = (Nombre: "Alice", Edad: 30);
Console.WriteLine($"Nombre: {tupla.Nombre}, Edad: {tupla.Edad}");
Esto permite acceder a los elementos de forma clara por nombre.
Devolver tuplas desde métodos
Puedes usar tuplas para retornar múltiples valores sin definir clases adicionales.
public (int Cociente, int Resto) Dividir(int dividendo, int divisor) {
return (dividendo / divisor, dividendo % divisor);
}
var resultado = Dividir(10, 3);
Console.WriteLine($"Cociente: {resultado.Cociente}, Resto: {resultado.Resto}");
Esto mejora la legibilidad del código y evita estructuras innecesarias.
Desconstrucción de tuplas
Puedes descomponer tuplas en variables individuales de forma directa.
var (nombre, edad) = tupla;
Console.WriteLine($"Nombre: {nombre}, Edad: {edad}");
Esto facilita trabajar con los datos de forma limpia.
Buenas Prácticas
Usa tuplas para resultados simples y temporales. Prefiere clases o records si los datos tienen comportamiento o significado más complejo. Nombra los campos de la tupla para mejorar la legibilidad. Evita usar tuplas muy grandes o anidadas en exceso para mantener el código claro.