No aprendas jQuery, aprende Javascript
En los últimos meses me he encontrado frases como: jQuery es el framework más famoso por excelencia. Esta frase de hecho es falsa ya que jQuery es una librería. Fue creada en el 2006 con una idea clara: resolver el problema de manejo de eventos, animaciones, ajax y DOM.
Aún haces Javascript desnudo sin ningún framework o compilador? Estás en el pasado.
Esto puede ser cierto, Javascript necesita frameworks y compiladores, pero los que hay hoy todavía están en una etapa de desarrollo muy temprana como para casarse con uno solo. Así es como vimos que Backbone cambió de Controladores a Routers por que no tenía mucho sentido tener controladores en el browser y a su vez Google abandonó GWT y creó Dart.
En los últimos años las necesidades en el uso de Javascript han cambiado, las cuatro “cosas” para las que fue creado jQuery se consideran algo trivial. En la actualidad nuestras aplicaciones web requieren más interacción, otras necesidades y deben de correr en dispositivos muy diversos.
Un ejemplo es que se pasó de tener un search con ajax a tener una aplicación con múltiples tabs, autocomplete y 10 requerimientos más. Antes de que nos diéramos cuenta se comenzó a requerir que toda la aplicación fuera de una sola página, con muchas interacciones y distintos flujos de trabajo.
Todo esto para darnos cuenta que nuestro código de Javascript creció de unas cuantas líneas a varios módulos y nuestro código se convirtió en un gran “espagueti”. Hoy en día este es uno de los principales problemas que sufrimos con Javascript y si la aplicación la hicimos con jQuery es mucho peor aún por que jQuery fuerza a una estructura centrada en el Dom.
En el 2011 hemos visto nacer frameworks que nos permitan estructurar nuestras aplicaciones de mejor manera, algunos de ellos han madurado muy rápido como Backbone, SpineJs. Vemos hacia Google Closure, YUI, sproutcore y ExtJs para ver que se puede hacer con estas librerías, heramientas o frameworks que llevan más tiempo en el mercado y se han utilizado para hacer interfaces completas en Javascript por mucho tiempo.
Entonces la próxima vez que alguien diga algo como:
Excepto claro, si aún haces JS desnudo de siempre. Que es muy testosterónico, pero poco productivo. Los frameworks hacen fácil la vida, los grandes jugadores los usan. No hay por qué no usarlos.
Por favor, no le hagan caso, lo que hoy se necesita es fuertes bases de Javascript para poder adoptar los distintos frameworks, evolucionar con un lenguaje que esta en amplio crecimiento y aportar a las distintas librerías, frameworks y proyectos, por que en la mayoría de los casos están destinadas a pasar por un largo proceso de adaptación a las crecientes necesidades de Javascript que veremos en los próximos años, donde lo usaremos para interfaces web, aplicaciones móviles, servidores, etc.
Comparto tu opinión. Yo lo que estoy haciendo es profundizar en JavaScript
Muy buena entrada gracias por el tip.
Saludos.
Seria bueno que pusieran diferentes alternativas para apoyar el articulo en cuanto a las fuentes de conocimiento.
ok osea que no tengo que llevarme te todo lo que se dice en mejorando.la Nice aun programo js desnudo
Creo que una muy buena opcion para empezar es http://yuiblog.com/crockford/
Recomiendo leer este artículo:
“Alternativas a jQuery” : http://t.co/HS8mwbwv
Proyectos pequeños … pequeñas exigencias
Proyectos grandes … grandes exigencias
Excelente articulo 😀
Un comentario, en los comentarios si le das enviar sin rellenar nada te manda a otra pagina de error, Y la validación en Javascript?
@luis, definitivamente peligroso confiar en esos dos a ciegas. Siempre hay que tener una mente crítica y nutrirnos de más puntos de vista
A mí me pasó algo así con una aplicación que estaba haciendo el año pasado, y me tocó improvisar algo de rutas y controladores con javascript, que fue lo que escribí en este y otro tuto en clab: http://www.cristalab.com/tutoriales/mvc-en-javascript-con-ajax-y-jquery-parte-2-controladores-c95719l/
En fin, hoy en día ya hay cosas mucho más maduras por supuesto.
Javascript me soluciona problemas jquery me ayuda a solucionarlos.
Interesante, por lo general me gusta utilizar el javascript al desnudo por que pienso que se me hace mas fácil moldearlo a mi conveniencia, y cuando conocí jquery, mis profesores me decían utilízalo es mejor, y yo me lo creía, desde entonces no me gustaba utilizar jquery, tiene muchos efectos padres, pero ciento que me limitaba intelectualmente, ¿que opinan de xajax?, siempre he querido saber la opinión de otras personas
Angel, cómo jquery puede limitarte intelectualmente? No entiendo eso… Dime un ejemplo de algo que haces con javascript que no se pueda o te limite jquery por favor, referente a DOM. En Jquery también puedes crear tus propios plugins, en ese caso podrías implementar tu código cuando haya excepciones.
¿Alguna vez has validado con el jquery?¿alguna vez has validado solamente con javascript? al menos para mi me supone un reto programar al puro javascript.
Y tampoco diga que jquery sea malo, repito tiene cosas interesantes, y lo he utilizado para muchas cosas, pero para mi no me supone un reto.
Hay que saber de los dos!. La facultad esta llena de folletos con cursos de jquery…
@angel
y que tiene que ver que te suponga un reto? el tema esta en la eficiencia… no entiendo que beneficio te trae el supuesto reto
Definitivamente NO ESTOY DE ACUERDO.
JQuery ha demostrado ser muy escalable y mejorar enormemente los tiempos de desarrollo y los argumentos que has dado en este artículos son muy pobres contra todos los beneficios que te da jQuery…. lo siento pero creo que hay que ser muy objetivo y dos dedos de frente al decir “no aprendas jQuery” que disparate es ese pfff.
Lamentablemente, debo encontrarme dentro del grupo que está en desacuerdo con este post.
Si bien es real el hecho de necesitar tener un fall back en JS “pelado”, creo que basarse en el supuesto reto de esto tiene poco que ver con las reales necesidades de lo que supone una aplicación; también veo una pérdida de foco en asegurarlo.
El foco real de una aplicación, es la performance de esta, y no el reto que supone; sobre todo que no veo en lo más mínimo “spaguetti” utilizando Jquery, lo encuentro super ordenado en comparación a JS puro.
Creo que el artículo trata de ser controversial para captar lectores, pero termina careciendo de fundamentos objetivos.
Saludos desde Argentina.
Totalmente de acuerdo con el articulo, para mi no tiene sentido ser esclavo de un framework y sus actualizaciones :S
Pues para mi el tener retos me hace mejor como programador, por ejemplo yo no uso Frameworks de php, yo hago mis propia herramientas, y en caso de jquery tiene efectos bien padres, pero, no es lo mismo, por que no crean ustedes sus propias herramientas con javascript, su propios frameworks para mi eso es mejor, te hace mejor programador, y ademas no solo existe jquery, hay mas.
Es cierto, no usen jQuery, no usen Backbone, no usen Dojo, no usen ningún template engine, ni siquiera pueden instalar pachetes de nodejs Hagan todo desde cero.
porque dices que GWT fue abandonado por Google?
¿que opinan de xajax? quisiera saber sus opiniones
[…] un título que me llamó la atención “No aprendas jQuery, aprende JavaScript por @Siedrixhttp://bit.ly/A29kp1” al acceder al enlace, los Maestros del Web me permitían, sin cargo, descargar una breve […]
Estoy totalmente de acuerdo con el articulo, es preferible saber javascript para poder dominar mas fácilmente los distintos tipos de frameworks existentes
Solo el slogan lo dice:
Jquery, Write Less, Do More…
Es gracioso leer un post tan enfocado en rebajar a cristalab jajaja, lo más triste es que por allá ni nombran esta web, es como con los ateos, vivir basado en otro ser superior, con el unico interes de insultarlo, jaja.
La conclusión es: usa jquery porque es genial, pero nunca dejes de aprender javascript a secas, porque es un estándar, y los estándares hay que respetarlos y dominarlos.
Es mejor saber bien los fundamentos de javascript y luego aprender algun framework javascript que te facilite la vida.
En la vida real, la programacion debe ser rapida y eficiente. Si nos pusieramos a programar todo desde cero, entonces mejor programemos en código máquina jeje.
Saludos.
No hay q irse nunca a los extremos, es obvio que tenemos que tener un dominio en el lenguaje, pero por que despreciar una herramienta que nos va a facilitar la vida? Yo abogo por desarrollar unos buenos cimientos en nuestros conocimientos del lenguaje y después con esa base, conseguirnos un buen framework que nos facilite un poco la tarea, para así encargarnos de aquellos aspectos que son realmentes importantes en el desarrollo de proyectos. Que al fin al cabo ese es la finalidad de los framework. En fin, viva jquery y javascript.
jQuery está muy bien por su facilidad para implementar con pocas líneas animaciones e interacciones que con “JavaScript desnudo” lleva el triple de tiempo.
Utilizar uno u otro framework depende de la complejidad de la aplicación, existen librerías como ExtJs, Node, Dojo y más con un potencial tremendo.
Yo creo que podemos diferenciar dos categorías de Javascript:
Una categoría para Diseñadores y otro para desarrolladores. En el primero aplica jQuery, Mootools, etc. En el segundo Javascript. Obviamente depende mucho el tipo de proyecto.
Abrazo.
Jquery agiliza el desarrollo, y me evita tener que lidiar con las diferencias de implementaciones entre browsers, lo malo es que ahora muchos aprenden jquery sin antes haber aprendido javascript y para todo buscan una solucion basada en jquery incluso en cosas sencillas (¿alguien conoce un plugin que me haga esto o aquello?)
Totalmente en desacuerdo, los beneficios que brinda jQuery son demasiados, y existen proyectos muy serios que usan esta libreria. Para que reinventar la rueda, lo que se busca es efectividad, si estas en la universidad, si te recomiendo primero aprender JS puro, pero eso solo si quieres aprender, cuando te veas envuelto en un proyecto grande y serio te vere padeciendo si no usas una libreria. Además no solo se puede usar jQuery, existen varias librerias como las que se mencionan en este articulo.
Les recomendaria obtener mas puntos de vista y mas investigacion acerca de este tema para que ustedes mismos saquen sus conclusiones.
Saludos
Saludos gente, antes que nada quiero felicitar a los desarrolladores de esta web tan interesante… no obstante de todos los temas que pude leer está noche, este me parecio muy interesante.
Estoy en la elaboración de mi Tesis de graduación para Ing. de sistemas, y mi proyecto es una Red Social, y estoy utilizando Jquery, la verdad es que pienso que todo tiene que ir evolucionando como algunos colegas en sus comentarios mencionaron, si comenzamos a desarrollar todo desde cero pasaríamos la vida haciendolo, simplemente hay que adaptarse y aprovechar las herramientas que surjan.
No obstante no dejo de ver la opinion sobre este tema, es cierto que es bueno utilizar el lenguaje madre, y hay personas que utilizan primero Jquery u otra librería antes de siquiera aprender JavaScript, y no voy de acuerdo, pero le veo los dos puntos de vistas, y le doy su merito JQuery que tantas veces nos ha sacado de apuros.
Y el que quiera hacer las cosas a su manera hagalo, nadie le está obligando a utilizar librerías.
Suerte a todos!!!
Hola, espero no sea imprudente mi pregunta.
En que empresa o centro de formacion puedo tomar cursos de javascript en el D.F.
Saludos y agradecere cualquier orientacion al respecto.
Pienso que jquery es de gran utilidad, y no hay que olvidar que como libreria evoluciona y puede salir en futuro muy cercano una mejor, y por esta razón no se puede dejar de un lado javascript y es aqui donde comparto “parte” de tu opinion, porque como programador el JQuery es bastante lo que me ha servido hasta el momento. Pero para tener un mejor entendimiento hay que saber javascript, ademas el es lenguaje madre de la famosa libreria jquery.
Reinaldo me gustaria ponerme en contacto contigo ya que vi que desarrollas una red social… Necesito hablar de negocios contigo
Excelente articulo!!.
Es igual que cuando en el colegio te dicen:
– Usen esta formula: ….- , y el profe escribe una formula muuy larga. No falta algun curioso del curso que dice:
– Pero profe, quien invento esa formula, porque es tan complicada???-
– Eso a ustedes no les interesa, no se preocupen de eso, ustedes apliquen y listo!!
Fin de la historia.
A la mayoria de la gente no le interesa el PORQUE de las cosas, y se escudan bajo la idea de que no es necesario inventar la rueda otra vez. Einstein no invento la teoria de la relatividad por casualidad. Lo mismo pasa con la programacion. Una compañia seria como Google, Apple, etc, nunca usará un framework ajeno como visual studio, porque no puede depender de terceros para su progreso.
Los frameworks se usan para GANAR DINERO. Cuanto mas rapido haces trabajar a tus programadores, mas rapido podras vender tus productos y ganar dinero. Y si el framework muere, el programa tambien muere porque habra que migrar a otro framework.
Yo creo que los framework estan bien para aficionados, programadores individuales, incluso para pequeñas empresas, pero si se quiere hacer algo serio se debe hacer con el propio lenguaje aunque tome mas tiempo.
Excelente aporte ademas… estoy viendo que los articulos no tienen fecha de salida almenos no la veo solo tienen fecha los comentarios de los web master ojala arreglaran eso para hablar con argumentos cuando cite alguno de estos articulos