FUNDAMENTOS DE PROGRAMACIÓN CON C#: 020-TIPOS GENÉRICOS

Kevin Arias
FUNDAMENTOS DE PROGRAMACIÓN CON C#: 020-TIPOS GENÉRICOS
"Siendo esta la última publicación sobre los fundamentos de programación, ahora veremos el tema de los tipos genéricos lo que nos permite mantener códigos reutilizables y escalables siempre y cuando sepamos como usarlo."

Los tipos genéricos nos permiten definir interfaces o clases a los cuales podemos pasarle un parámetro que representará el tipo de datos que quisieramos emplear ya sea para variables de salida o entrada en el objeto que vengamos a incorporarlo con lo que nos da una mayor facilidad de uso y un punto alto de reutilización de código sobre nuestro programa.

Seguidamente les dejo con el código que se emplea en este ejemplo en lo cual trabajamos con 1 interface que dispone de los tipos genéricos, 3 clases que lo implementan de forma diferente con respecto a los tipos de entrada y salida necesario y una última clase que dispone el suo de las 3 clases anteriormente mencionados a través de su interface.

IClase.cs

namespace AppFirst
{
    public interface IClase
    {
        T operar(X variable);
    }
}

ClaseUno.cs

using System;

namespace AppFirst
{
    public class ClaseUno : IClase
    {
        public float operar(string variable)
        {
            return float.Parse(variable);
        }
    }
}

ClaseDos.cs

using System;

namespace AppFirst
{
    public class ClaseDos : IClase
    {
        public int operar(float variable)
        {
            return int.Parse(variable.ToString());
        }
    }
}

ClaseTres.cs

using System;

namespace AppFirst
{
    public class ClaseTres : IClase
    {
        public string operar(string variable)
        {
            return "Hola desde " + variable;
        }
    }
}

Program.cs

using System;

namespace AppFirst
{
    public class Program
    {
        public static void Main(string[] args)
        {
            IClase x = new ClaseUno();
            IClase y = new ClaseDos();
            IClase z = new ClaseTres();

            Console.WriteLine(x.operar("10.5"));
            Console.WriteLine(y.operar(7.0f));
            Console.WriteLine(z.operar("codideep.com"));

            Console.ReadLine();
        }
    }
}

Para mayor información y una explicación detallada del tema, les dejo seguidamente con el video que explica este proceso.


Archivo de soporte disponible
Descarga los materiales del tutorial para practicar localmente.
Descargar archivo
¿Te sirvió este artículo? Apóyanos con una donación para seguir creando contenido gratuito de calidad:
Sobre el autor
Kevin Arnold Arias Figueroa
SOFTWARE ARCHITECT - CODIDEEP E.I.R.L.
Profesional en tecnologías de la información con más de 10 años de experiencia en desarrollo de software empresarial, con amplios conocimientos en manejo de arquitecturas de software de escala vertical y horizontal, gestión de proyectos, liderazgo de equipos y dominio en modelado de procesos a gran escala.
Anterior Siguiente