Javascript es un lenguaje puramente orientado a objetos. En este artículo se revisan las técnicas más recientes para la programación de aplicaciones complejas siguiendo el modelo de las grandes librerías.
#4 Interesante documento, pero no pone que sea puramente orientado a objetos, simplemente orientado a objetos, y aun así discrepo. Que haya que hacer trucos o malabares para añadirle funcionalidades básicas como herencia o polimorfismo no lo hace orientado a objetos. Porque, por esa regla de tres, incluso el ensamblador es orientado a objetos si me lo curro muchiiiisimo.
Visual Basic 6 no es orientado a objetos, sino a eventos, pero creando la infraestructura necesaria, puedo simular todas sus características de un lenguaje de objetos.
Y lo de que javascript es OO "pura"... por definición, todo debe ser un objeto. Eso incluye hasta los bucles. Muy pocos lenguajes hacen eso. Smalltalk y no recuerdo si Eiffel también.
Javascript no es un lenguaje orientado a objetos, así que mucho menos podemos hablar de el como "puramente". Ni siquiera java y .net son puros. Smalltalk sí.
Otra cosa es que se pueda simular su orientación a objetos.
#1 y #2 Es interesante que no consideréis Javascript como puramente orientado a objetos cuando si lo hace su creador, Brendan Eich. Según la especificación ECMAScript, se define como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico:
Ademas, Douglas Crockford, máxima autoridad actual en Javascript, además de Zakas, John Resig o Stefanov hablan de él como lenguaje OO puro y basan ahí la arquitectura moderna de las aplicaciones.
Decir que no es un lenguaje orientado a objetos es no conocerlo ya que en su estructura a más bajo nivel se articula mediante prototipos que son un tipo de objeto JS.
Comentarios
#2 Que se equivoque en el 1% del artículo no invalida el 99% restante.
#4 Interesante documento, pero no pone que sea puramente orientado a objetos, simplemente orientado a objetos, y aun así discrepo. Que haya que hacer trucos o malabares para añadirle funcionalidades básicas como herencia o polimorfismo no lo hace orientado a objetos. Porque, por esa regla de tres, incluso el ensamblador es orientado a objetos si me lo curro muchiiiisimo.
Visual Basic 6 no es orientado a objetos, sino a eventos, pero creando la infraestructura necesaria, puedo simular todas sus características de un lenguaje de objetos.
Y lo de que javascript es OO "pura"... por definición, todo debe ser un objeto. Eso incluye hasta los bucles. Muy pocos lenguajes hacen eso. Smalltalk y no recuerdo si Eiffel también.
Javascript no es un lenguaje orientado a objetos, así que mucho menos podemos hablar de el como "puramente". Ni siquiera java y .net son puros. Smalltalk sí.
Otra cosa es que se pueda simular su orientación a objetos.
#1 Cierto. Y has sido muy benévolo al no votar errónea.
#1 y #2 Es interesante que no consideréis Javascript como puramente orientado a objetos cuando si lo hace su creador, Brendan Eich. Según la especificación ECMAScript, se define como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico:
http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf
Ademas, Douglas Crockford, máxima autoridad actual en Javascript, además de Zakas, John Resig o Stefanov hablan de él como lenguaje OO puro y basan ahí la arquitectura moderna de las aplicaciones.
Decir que no es un lenguaje orientado a objetos es no conocerlo ya que en su estructura a más bajo nivel se articula mediante prototipos que son un tipo de objeto JS.
Aquí tenéis la argumentación de Crockford:
http://www.crockford.com/javascript/javascript.html
Saludos.
#4 El creador puede cantar misa. Mi madre también dice que yo soy muy guapo.