domingo, 29 de enero de 2017

Herencia de Objetos en JavaScript

Como todo buen desarrollador de juegos sabe, si vamos a desarrollar un buen proyecto, es conveniente (aunque no obligatorio) que utilicemos alguna forma de herencia y polimorfismo en el código de nuestros juegos.

Para actualizarnos, existe un nuevo estandar de JavaScript, llamado ECMAScript 6, que empezó a funcionar desde 2015 y que entre sus múltiples cambios, ahora incluye las palabras clave class, constructor, static, extends y super. Lo cual nos facilita la vida grandemente.

Algunas referencias para entender esto son:

https://developer.mozilla.org/es/docs/Web/JavaScript/Herencia_y_la_cadena_de_protipos

y

https://carlosazaustre.es/blog/ecmascript-6-el-nuevo-estandar-de-javascript/
(que también incluye interesante información sobre como crear los módulos para importar funcionalidad de otros archivos de scripts en nuestro código, lo veremos luego ...)

Sin embargo, debemos tener cuidado, puesto que si queremos que nuestros desarrollos abarquen la mayor cantidad de usuarios posibles, también debemos soportar las versiones anteriores de navegador y lenguaje (al menos una versión anterior)

Por lo que podemos sentirnos inclinados a utilizar la versión ECMAScript 5, vigente desde 2009.


Un buen artículo que explica a detalle la herencia de objetos en JavaScript es este (y en español!)

Y otro buen articulo (en inglés, están advertidos) sobre como extender un objeto en Javascript es este

Otro enlace más:
https://developer.mozilla.org/es/docs/Web/JavaScript/Introducci%C3%B3n_a_JavaScript_orientado_a_objetos#Inheritance


Han encontrado ustedes alguna otra forma de heredar objetos en JavaScript?

En el siguiente post, veremos un par de ejemplos del uso de herencia en Javascript.