Contenido

Prototype vs jQuery, la competición de los frameworks

15 Sep

+ 8

Los frameworks javascript cada vez son más depurados y cada vez aportan más funcionalidades, pero al ser tantos y tan diferentes debemos pararnos a pensar cual nos interesa utilizar en cada momento. No por ser amante de MooTools, pienso despreciar el uso de jQuery o Prototype, aunque con él podría hacer lo mismo. Todo dependerá del proyecto en el que esté inmerso, la finalidad del proyecto y las funcionalidades que queramos añadirles al proyecto.

Por eso siempre es bueno saber que virtudes tiene cada framework y para que podemos usarlo, sabiendo que es mejor que los demás en ello. Via Digg, descubro una comparativa entre jQuery y las 2 versiones más recientes de Prototype, con unos resultados la mar de interesantes.

Test Framework Code Time Calls
CSS Selctor Prototype 1.5.1.1 $$(’td’); 1180.986ms 21
Prototype 1.6.0-RC0 $$(’td’); 1136.175ms 24
jQuery 1.1.4 $$(’td’); 1573.724ms 20
Events Prototype 1.5.1.1 $$(’td’).each(function(el){Event.observe(el, ‘click’, function(){alert(’Hello world!’);})}); 7636.846ms 296087
Prototype 1.6.0-RC0 $$(’td’).each(function(el){Event.observe(el, ‘click’, function(){alert(’Hello world!’);})}); 18013.847ms* 888218
jQuery 1.1.4 $(”td”).click(function() { alert(”Hello world!”); }); 6608.102ms 98712
$.hide Prototype 1.5.1.1 $$(’td’).each(function(el){el.hide();}); 7738.924ms* 345431
Prototype 1.6.0-RC0 $$(’td’).each(function(el){el.hide();}); 7519.077ms 394778
jQuery 1.1.4 $(”td”).hide(0); 78278.707ms* 493476
Insertion Prototype 1.5.1.1 $$(’li’).each(function(el){new Insertion.After(el, ‘<b>yay</b>’);}); 260.423ms 1094
Prototype 1.6.0-RC0 $$(’li’).each(function(el){new Insertion.After(el, ‘<b>yay</b>’) ;}); 226.057ms 1412
jQuery 1.1.4 $(”li”).append(”<b>yay</b>”); 132.116ms 409

 Si escudriñamos los resultados podemos concretar que:

  • Los selectores CSS de Prototype 1.5.1.1 es más rápido pese a hacer alguna llamada más.
  • La gestión de Eventos es dominada por jQuery realizando menos llamadas.
  • Prototype 1.5.1.1. es más rápido ocultando elementos que la versión beta (1.6.0-RC0), y mucho más que jQuery.
  • La insercción de objetos está dominada por jQuery con casi el doble de velocidad y muchas menos llamadas.

Ahora, la decisión es tuya :D

Me gustan estas comparaciones, yo uso jquery, me parece muy sencillo y con bastante comunidad (que es lo inportante) tb he echado un ojo a mootools,me gusta que sea modulable, pero la verdad que con jquery consigo de momento todo.

Mi voto Jquery

Yo también comencé a usar activamente jQuery. Otra ventaja particular de jQuery es que es casi un 50% más liviana que Prototype, lo cual fue mi principal criterio a la hora de elegirla para mis proyectos.

Mootools no he alcanzado a evaluarla, pero tiene a favor de Prototype el tamaño, como jQuery.

Así que mi voto va por jQuery ;)

Creo que ya ha salido la versión 1.2 de jQuery, me equivoco? También podrías haber realizados las pruebas en dicha versión.

Sin duda, jQuery. Yo estoy trabajando ahora mismo con la versión 1.2 y es todo un gustazo.

En casi todas las comparaciones que he visto, el framework que publica los resultados es el que gana, es increíble, como cuando hay elecciones e incluso los que pierden dicen que ganaron.

De todos modos, para agregar otra comparación más, el otro día estaba viendo una comparación en la página de extJS: Ext JS Blog - » CSS Selectors - Speed Myths (sobre el cual, por lo que he visto especialmente con eXtplorer, me parece bastante impresionante; extraño que no haya visto mucho por acá)… pero bueno, lo importante no eso, sino la gran diferencia que hay en el rendimiento de las librerías en diferentes navegadores.

Y, aparte de eso, hay que mencionar que la suite de pruebas de mootools es fantástica: SlickSpeed Selectors Test

difiero un poco con los comentarios anteriores, por mi parte prefiero Prototype ante cualquier libreria, pero no con esto quiero decir que no he ocupado JQuery o Mootols.

Pero aunque Prototype sea un tanto pesada, encuentro que su velocidad y “madurez” es la que me atrae y la hace tan importante. A su vez tiene una gran comunidad, gran lista de clases, etc y etc.

Saludos

Vendría de diez agregar mootools a la lista… Andrés, por que elejiste mootools vos personalmente??…

yo uso prototype más que jquery o mootools, me sorprende que la version nueva (1.6.0-RC0) no supere a la versión anterior, esperemos que esto mejore en proximos versiones.

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.


Cerrar
Enviar por Correo