¿Qué es Polimorfismo?
¿Qué es el polimorfismo y cómo puede mejorar tu código? Aprende a implementar el polimorfismo en tu propio código y descubre cómo puede simplificar y mejorar tu código.
Polimorfismo se refiere a la capacidad de una función o método de ser utilizado de maneras diferentes en diferentes contextos en la programación. Esto significa que una función o método puede tener varias formas de ser utilizado. Es útil porque permite crear código más flexible y reutilizable.
Para entender más, veámoslo representado en código, el siguiente fragmento de código es en Typescript.
La clase Vehiculo
es la clase padre y tiene un método abstracto llamado conducir
no tiene una implementación. Esto significa que cualquier clase que herede de Vehiculo
debe sobrescribir el método conducir
y proporcionar su propia implementación.
Las clases Auto
y Motocicleta
son clases hijas que heredan de Vehiculo
y sobrescriben el método conducir
de manera diferente. La clase Auto
tiene una implementación del método conducir
que imprime "Estoy conduciendo un auto." en la consola, mientras que la clase Motocicleta
tiene una implementación del método "conducir" que imprime "Estoy conduciendo una motocicleta!" en la consola.
La función conducirVehiculo
toma un objeto de tipo Vehiculo
como parámetro y llama al método conducir
en ese objeto. Esto significa que la función conducirVehiculo
puede funcionar con cualquier objeto que tenga un método conducir
sobrescrito adecuadamente.
const auto = new Auto();
const motocicleta = new Motocicleta();
// Estas llamadas a la función conducirVehiculo utilizarán la versión sobrescrita del método conducir
// en las clases Auto y Motocicleta, respectivamente.
conducirVehiculo(auto); // Imprimirá "Estoy conduciendo un auto."
conducirVehiculo(motocicleta); // Imprimirá "Estoy conduciendo una motocicleta!"
Finalmente, se crean dos objetos: uno de tipo Vehiculo
y otro de tipo Motocicleta
. Luego, se llama a la función conducirVehiculo
con cada uno de estos objetos. Cuando se llama a la función conducirVehiculo
con el objeto de tipo Vehiculo
, se utiliza la versión sobrescrita del método conducir
en la clase Auto
, que imprime "Estoy conduciendo un auto." en la consola.
Del mismo modo, cuando se llama a la función conducirVehiculo
con el objeto de tipo Motocicleta
, se utiliza la versión sobrescrita del método conducir
en la clase Motocicleta
, que imprime "Estoy conduciendo una motocicleta!" en la consola. Esto es polimorfismo.
¿En donde se puede utilizar el polimorfismo?
Es bastante usado en la programación, algunos ejemplos usados en la industria son:
- El polimorfismo en un videojuego puede utilizarse para dotar a un personaje de capacidades y habilidades variadas que pueden adaptarse a contextos distintivos. Por ejemplo, un personaje puede tener la posibilidad de invocar una capacidad que puede emplearse para manifestar un resultado deseado.
- En una aplicación de seguimiento de actividad física, se puede utilizar el polimorfismo para que diferentes tipos de actividades (como caminar, correr y hacer ejercicio en el gimnasio) se maneje el conteo de pasos de maneras diferentes.
En conclusión, el polimorfismo es un concepto clave en la programación que permite que una función o método tenga múltiples formas. Esto puede ser muy útil en una amplia variedad de aplicaciones, ya que permite que diferentes objetos o elementos se manejen de maneras diferentes dependiendo del contexto.
Si estás interesado en aprender más sobre el polimorfismo y cómo se puede utilizar en tu propio código, hay muchos recursos en línea que pueden ayudarte a profundizar en este tema. ¡Esperamos que hayas disfrutado este post y hayas aprendido algo nuevo sobre el polimorfismo!
Krative Digital Boletin informativo
Únase al boletín para recibir las últimas actualizaciones en su bandeja de entrada.