PRINCIPIO DE SUSTITUCIÓN DE LISKOV

in #spanish6 years ago

Propia Edición.

Y asi seguimos con el siguiente principio la sustitución de Liskov propuesto por Bárbara Liskov el cual dicta:

Lo que queremos es algo parecido a la siguiente propiedad sustitutiva: Si por cada objeto O1 de tipo S hay un objeto O2 de tipo T tal que todos los programas P estan definidos en términos de T, el comportamiento de P no cambia cuando O1 es sustituido por O2 siendo S un subtipo de T.

En términos simples: Las clases subtipos deberían poder ser reemplazables por sus tipos base. Por lo que si en alguna parte del programa usamos alguna clase y esta es extendida podríamos poder utilizar cualquier clase hija en su lugar. hagamos una analogía para que quede aun mas claro imagina una clase Ave en la cual por alguna razón tendremos un método volar, a primera vista estaría bien, pues podríamos hacer una clase Alcon : Ave e implemetaria volar sin problemas; pero que pasa para una clase Pingüino : Ave entonces el método volar quedaría sin funcionalidad y tendríamos que llamarlo para bien sobre escribirlo y lanzar una excepción o simplemente dejarlo ahí.

Sin embargo para que puedas identificar que este principio no esta siendo respetado solo revisa: siguiendo el ejemplo de las aves de arriba podemos darnos cuenta que la clase Pingüino tendría el método volar y como este cumpliría con lo siguiente: Si un método sobrescrito no hace nada o lanza una excepción, es muy probable que estés violando el principio de sustitución de Liskov.




Recuerda que estos principios fueron publicados por primera vez por Robert C. Martin, también conocido como Uncle Bob, en su libro Agile Software Development: Principles, Patterns, and Practices. Una persona que te recomiendo seguir, y revisar su blog de vez en cuando.

Fuente

Y recuerden amiguitos:

  • Un mejor desarrollo conlleva poder ser interpretado por cualquier programador.
  • Si forjas estas bases como tuyas los resultados que obtendrás serán satisfactorias tanto para ti como para el que toque tu proyecto a futuro .
  • No importa si ya eres un viejo lobo de mar en esto o apenas emprendes esta aventura conocer estos principios lo único que pueden hacer es hacerte mejorar.

Hasta la próxima...

Entradas Relacionadas
S.O.L.I.D.
Principio de Responsabilidad Única
Principio Open/Closed

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.034
BTC 63877.55
ETH 3143.56
USDT 1.00
SBD 3.97