Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

Introducción JS: Polimorfismo

La Programación Orientada a Objetos (POO) es un concepto complejo con muchos aspectos. A lo largo del tiempo, POO ha sido interpretada de diferentes maneras. Existen al menos dos enfoques principales de POO: uno formulado por Alan Kay, creador del lenguaje SmallTalk, y otro que se centra en el polimorfismo, la herencia y la encapsulación (según Grady Booch). Hoy en día, generalmente nos referimos al segundo enfoque cuando hablamos de POO, aunque el primero sigue siendo relevante en muchos lenguajes. Incluso dentro del segundo enfoque, diferentes lenguajes ponen énfasis en distintas capacidades. Lo que se considera esencial en algunos lenguajes de POO, puede no serlo en otros.

Si intentamos identificar el aspecto más fundamental que comparten todos los lenguajes de POO (según Booch), ese sería el polimorfismo de subtipos.

El polimorfismo de subtipos es la característica más importante de la programación orientada a objetos moderna. Benjamin Pierce. Autor del libro "Teoría de tipos en lenguajes de programación".

En este curso, exploraremos en detalle el polimorfismo, los mecanismos para su implementación y, lo más importante, aprenderemos a aplicarlo correctamente. Los temas principales de este curso incluyen:

  • Tipos de polimorfismo: polimorfismo de subtipos y polimorfismo paramétrico.
  • Despacho y sus tipos.
  • Inversión de dependencias e inyección de dependencias.
  • Contenedor de Inyección de Dependencias (DI).
  • Principios SOLID (SRP, OCP, LSP, ISP, DIP).

Además, nos familiarizaremos con el concepto de "patrones de diseño". Analizaremos su impacto en la estructura del código y conoceremos algunos patrones populares:

  • Objeto Nulo (Null Object).
  • Estrategia (Strategy).
  • Fábrica (Factory).

Discutiremos cuándo el polimorfismo es necesario, cuándo no lo es y cuándo puede ser perjudicial. También exploraremos varias técnicas que permiten obtener un comportamiento polimórfico sin utilizar objetos, revisando diferentes tipos de despacho.

Preparación para este Curso

Este curso asume que ya tienes un buen dominio de la sintaxis y los métodos de trabajo con funciones y objetos, así como una comprensión básica de POO en JavaScript. Si tienes dificultades con estos temas, te recomendamos completar los siguientes cursos en Códica:

  • Fundamentos de JavaScript
  • JS: Objetos
  • JS: Funciones
  • JS: Introducción a la POO

Para acceder completo a curso necesitas un plan básico

El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY