Anexsoft | Blog y dictado de cursos de Tecnología

En este encontrarás tutoriales de tecnología como PHP, ASP.NET MVC, Front-End, entre otros y cursos exigentes de modalidad online que te ayudarán a crecer profesionalmente.

SOLID #3: Liskov substitution Principle con C#
Actualizado el 01 Junio, 2017 y leído 373 veces
Calificación: Sin calificar 10

SOLID #3: Liskov substitution Principle con C#

Anexsoft

Este principio es el que más me costo entender sobre todo por su compleja definición.

Si S es un subtipo de T, entonces los objetos de tipo T en un programa de computadora pueden ser sustituidos por objetos de tipo S (es decir, los objetos de tipo S pueden sustituir objetos de tipo T), sin alterar ninguna de las propiedades deseables de ese programa (la corrección, la tarea que realiza, etc.) - Wikpedia

Pero en pocas palabras lo que este proverbio chino quiere decir es que, cada clase que hereda de otra clase puede usarse como sus padres sin conocer la diferencia entre ellas.

Bien, tenemos una clase base abstracta que será un Robot y este puede realizar una cantidad X de punto de año al momento de atacar, pero necesita ser heredada par ser usada.

abstract class Robot
{
    public virtual int Attack()
    {
        return 100; // Damage Points
    }
}

Asimismo, la tecnología avanzado y llegaron 2 modelos nuevo pero van a heredar las características del Robot. La diferencia es que estos tienen más poder de ataque, por lo tanto habremos que sobrescribir sus métodos.

class Robot2017 : Robot
{
    public override int Attack()
    {
        return 150; // Damage Points
    }
}

class Robot2018 : Robot
{
    public override int Attack()
    {
        return 175; // Damage Points
    }
}

 

Ejemplo

Robot robot1 = new Robot2017();
robot1.Attack(); // Daña 150

Console.ReadLine();

Robot robot2 = new Robot2018();
robot2.Attack(); // Daña 175

Finalmente, podemos usar la clase base e instanciar las otras clases sin que nuestro código sea afectado (eso dice el principio de Liskov).

¡Adquiera ya!

  • Código de fuente de Red Social desarrollada en ASP.NET MVC

    Código de fuente de Red Social desarrollada en ASP.NET MVC
  • Software de Portafolio Profesional hecho en ASP.NET MVC 5 C#

    Software de Portafolio Profesional hecho en ASP.NET MVC 5 C#
  • Software de Venta e Inventario hecho en PHP y Codeigniter

    Software de Venta e Inventario hecho en PHP y Codeigniter

Últimas publicaciones

Encuesta

¿Cómo nos conociste?

Síguenos

Estudia con nosotros y crece profesionalmente

Nuestros cursos han sido hecho en base a lo que demanda el mercado hoy en día.
La experiencia obtenida es la de un ambiente laboral.

Anexsoft
© 2017 Anexsoft, blog y cursos online de TI.