JavaScript y el cambio de paradigma en la programación web

11

Si mi memoria no me falla, hubo un momento en que el uso de JavaScript para el desarrollo web estaba muy mal visto, porque entre otras cosas, era una preocupación de privacidad y seguridad para los usuarios y algunas personas simplemente lo tenían mal.

Hoy en día, casi no se puede ver un sitio web importante que no use JavaScript, y muchos sitios web dejarán de funcionar por completo sin JS, maldita sea la degradación elegante. O eso, o la usabilidad se verá gravemente afectada, como en los sitios de SE.

¿Qué ha cambiado entre entonces y ahora que hizo a JavaScript prácticamente omnipresente en el desarrollo web? ¿O es mi afirmación de que JS estaba mal visto por un producto de mi imaginación y siempre ha sido así?

NullUserException
fuente

Respuestas:

11

JavaScript ha tenido características terriblemente malas y sorprendentes.

Anteriormente, cuando no había Ajax, las masas no eran conscientes de esas características sorprendentes. Las páginas web eran solo documentos con algunos elementos de diseño (colores, imágenes, texturas, fuentes, etc.) que los adornaban. La sensación de dinamismo y asincronía era desconocida en su mayor parte. IE 6 era dominante y Microsoft estaba demasiado ocupado vendiendo otras cosas.

... Lo que ha cambiado entre entonces y ahora que hizo a JavaScript prácticamente ubicuo ...

  • El inicio de Ajax ha cambiado todo. Todos querían que sus páginas fueran ajaxy y ESO los obligaron a dar una segunda (y seria) mirada a JavaScript.

  • La gente le gusta Doug Crockford, John Resig, Steve Souders, y otros (perdóname si me olvido de otros nombres importantes) comenzó a difundir la palabra sobre la bondad de JavaScript.

  • Casi al mismo tiempo, los proveedores de navegadores comenzaron a perfeccionar sus navegadores y mejorar el rendimiento de JavaScript. Se presentó JIT y eso hizo que la competencia fuera aún más letal. Microsoft se despertó de nuevo.

  • ECMA se tomó en serio el futuro de JavaScript y comenzó a trabajar duro en las próximas versiones, lo que resultó en ECMAScript 5.

  • HTML5, DOM3, CSS3 están contribuyendo al reinado creciente de JavaScript.

  • JavaScript también se ha embarcado en otros dominios. Gracias a CommonJS.

codificador de árboles
fuente
Con base en esto: v8.googlecode.com/svn/data/benchmarks/v6/run.html , diría que Microsoft todavía tiene que despertar ...
riwalk
@ Stargazer712 Mis resultados Chrome 14 >> FF7> Opera 11.5> Safari 5.1 >>>> IE8. Aunque como el punto de referencia es de Google, no es sorprendente que Chrome haya salido tan lejos.
NullUserException
@NullUserException, cierto, pero mirando el código, los puntos de referencia son razonables.
Riwalk
4

Varios cambios se unieron para hacer de este nuevo mundo valiente:

  • Ajax Ok, seamos honestos, me refiero a Gmail. Gmail le mostró a la gente que puedes construir una aplicación web fluida en JavaScript. Siguió una avalancha de aplicaciones Ajax.

  • jQuery Las API DOM del navegador son horribles e inconsistentes para arrancar. jQuery le dio a la gente una API decente para codificar que era consistente en todos los navegadores. (Sí, hay otros buenos proyectos que hacen esto, pero jQuery es el más popular). También fue bastante fácil que los no programadores pudieran copiar y pegar para tener una animación fluida.

  • IE6 No, de verdad! IE6 fue el primer navegador que admitió correctamente algo como la especificación CSS real, y el hecho de que IE fuera tan dominante significaba que tenía una línea base confiable contra la cual construir. El hecho de que nos reímos ahora tiene más que ver con la edad que tiene: no estuvo mal cuando salió por primera vez.

  • Chrome Cuando Google lanzó Chrome, y su veloz motor V8, comenzaron una nueva carrera de rendimiento, cuyo resultado es un aumento significativo de la velocidad de JavaScript en la web. JavaScript más rápido significa que puede hacer más en JavaScript antes de que comience a molestar a sus usuarios.

Sean McMillan
fuente
3

La gente inventó sandboxes de JavaScript remotamente seguros y aprendió a implementarlo de manera más eficiente, junto con un aumento general en la potencia informática que lo hace más económico. Además, el advenimiento de AJAX y otras cosas hacen posibles los efectos con JavaScript que nunca podría ver posibles solo con HTML: todas las funciones web más avanzadas simplemente requieren JavaScript. Por lo tanto, un sitio web que se ejecuta sin JavaScript es bastante inanimado y sin vida, que no es lo que quieren los consumidores.

DeadMG
fuente
Los "sandboxes JS remotamente seguros" me desconciertan. Claro que puedes escribir JS seguro, pero ¿qué evitó que la gente escribiera JS malicioso?
NullUserException
@DeadMG Todo el mundo parece pensar que el único camino hacia la gloria era HTML o nada. Esta es la razón muy real de por qué los complementos (Flash es el más notable) se llevaron la cuota de mercado. Las normas son tan buenas como su competencia.
Aaron McIver
@NullUserException: ahora es mucho más difícil escribir JS inseguros. La mayoría de las vulnerabilidades implican engañar al servidor remoto, como XSS, no agujeros JS directamente.
DeadMG
+1 por mencionar sandboxes: no solo se trata de "cosas interesantes" que impulsaron el cambio de paradigma. La seguridad del navegador y la Política del mismo origen tuvieron mucho que ver con eso. Los navegadores de esa época pasada simplemente hicieron que navegar por la web fuera más peligroso (desde el punto de vista de la seguridad informática).
Ryan Kinal