Cuando vimos la herencia en el pasado, había algunas preguntas sobre las interfaces y clases abstractas.
- ¿Para qué las puedes usar?
- ¿Cuáles son las ventajas?
- ¿Cuándo deberías usarlas?
Estas son todas buenas preguntas que valen la pena de explorar. Como el título sugiere, “Polimorfismo” es una característica de la programación orientada a objetos que te ayuda a responder a estas preguntas. No es una característica muy fácil a comprender.
Es por eso que la mayoria del artículo va a estar sobre un ejemplo en profundidad. Vas a ver el proceso de pensamiento implicado con usar esta característica. Este va a ayudarte a comprenderla mejor así puedes aplicarla en tus proprios proyectos.
¿Qué es el polimorfismo?
El polimorfismo se centra sobre una sola idea. Es que puedes usar una interfaz o clase comuna para representar diferentes tipos de objetos. Ahora, hay diferentes tipos de polimorfismo. El uno que nos interesa es el polimorfismo de subtipo. Es el tipo de polimorfismo referenciando en la programación orientada a objetos.
¿Así que es el polimorfismo? Si recuerdas, herencia es sobre la creación de relaciones “como es” entre tus clases. Bien, polimorfismo se trata de estas relaciones. Es como construyes tus clases a su alrededor. Se trata de aprovechar estos elementos comunes entre tus clases.
Cuando trabajas con polimorfismo, te haces preguntas como:
- ¿Qué tiene mi clase
Mi_Widget
en común con todas las otras clases widget? - ¿Hay una manera de reutilizar elementos widget comunes?
- ¿Estos elementos comunes están relacionados con algo más?
Estas son preguntas específicas a WordPress. Eso dijo, puedes hacer preguntas generales sin importar el contexto. El objetivo es identificar lo que necesitas extractar y reutilizar entre tus clases. Dependerás de las herramientas que viste en el artículo sobre la herencia para hacerlo.