Cuando comencé a programar Javascript por primera vez después de tratar principalmente con OOP en el contexto de lenguajes basados en clases, me quedé confundido sobre por qué alguna vez se preferiría la OOP basada en prototipos a la OOP basada en clases.
- ¿Cuáles son las ventajas estructurales de usar OOP basado en prototipos, si hay alguno? (por ejemplo, ¿esperaríamos que sea más rápido o que requiera menos memoria en ciertas aplicaciones?)
- ¿Cuáles son las ventajas desde la perspectiva de un codificador? (por ejemplo, ¿es más fácil codificar ciertas aplicaciones o extender el código de otras personas mediante la creación de prototipos?)
No considere esta pregunta como una pregunta sobre Javascript en particular (que ha tenido muchas fallas a lo largo de los años que no tienen relación alguna con la creación de prototipos). En cambio, míralo en el contexto de las ventajas teóricas de la creación de prototipos frente a las clases.
Gracias.