Comunidad de diseño web y desarrollo en internet online

jQuery vs MooTools

Citar            
MensajeEscrito el 12 Ene 2012 10:42 pm
Hola, actualmente estoy trabajando en desarrollo de aplicaciones/interfaces web y como facilidad uso jQuery, llevo un tiempo usandolo, aunque había escuchado de MooTools mucho antes que de jQuery, me puse a compararlos un poco, y de hecho lo primero que vi fue que la descripción en ambos sitios web es muy diferente, jQuery se enfoca en hacer todo muy fácil y corto, además hay facilidades para programar casi sin saber (diseñadores), a pesar de esta descripción, su funcionalidad y utilidades no se rebajan a cosas simples, y no significa que sea muy limitado o que la complejidad de desarrollos que se logran con jQuery sean mínimos.

Por otra parte, la descripción de MooTools dice que es un framework enfocado desarrolladores de nivel intermedio-alto, y nuevamente esto no necesariamente significa que para hacer cosas simples se necesiten más lineas de código que con jQuery.

Luego, comparando un poco las sintaxis; en lo básico no son TAN diferentes, pero, lo que vi fue un cambio de rendimiento, en firefox 8.0.1 y en Chrome (no se qué versión) las animaciones de MooTools se ven más fluidas que las de jQuery, de igual manera el drag se ve más fluido con MooTools, pero no son datos científicos, entonces no puedo asegurar todo esto.

Entonces pido el consejo de los expertos, para guiarme en cual de estas dos excelentes herramientas debo elegir, para proyectos de cualquier tamaño.
Gracias! :D

Por hormy1

Claber

124 de clabLevel



 

firefox
Citar            
MensajeEscrito el 13 Ene 2012 07:26 pm
Yo soy partidario de JQuery por el soporte de la gran comunidad que tiene. Me ha sacado de muchos apuros.

Muchos creen que JQuery debe ser usada para eso, para "salir de apuros" pero yo la eh usado en proyectos para bancos por consideración de un IT Manager en conjuntos con Java server faces.

Algunas funciones de Jquery como map o each tienen mejor rendimiento que los for in nativos de Js.

Yo me quedo con JQuery por estas razones, de MooTools no se mucho espero que alguien con esa experiencia pueda resaltar los puntos interesantes.

Saludos,

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

chrome
Citar            
MensajeEscrito el 14 Ene 2012 03:32 am
Que interesante, de hecho también inicie en jQuery precisamente para salir de unos apuros, sin embargo luego hice una aplicación que requería envio y feedback de datos entre web services, y el uso de jquery aceleraba bastante el proceso con ajax y en la parte de interfaz para lograr una navegación sin recarga estilo pestañas, me fue muy útil, los desarrollos en UI también fueron de mucha ayuda.

Por hormy1

Claber

124 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Ene 2012 02:52 pm
Yo empece a programar en javascript usando "de golpe" Mootools, eso ya hace varios años, por alguna razón se me hacia todo un mundo entender un document.getElementbyId() jaj..
La gran fortaleza de Mootools radica en la posibilidad de reutilizar código, (mas alla de los componentes UI), implementa la POO basada en clases sobre JS, (JS soporta POO, pero basado en prototipos) , tiene mecanismos de herencia, y polimorfismo . En mootools los elementos NATIVOS de JS (DOM) son Objetos o algo asi como Clases cuya funcionalidad puedes extender facilmente por ejemplo:

Código Javascript :

 
Element.implement({
         
         centrar: function(){
            var dims=window.getSize(); // Aqui por ejemplo Mootools "agrego" el metodo getSize al objeto Window, y si a ti se te antoja podrias extenderlo con un simple window.implement({ .. , puedes tambien implementar "Function"  en realidad cualquier cosa..  
            var coors=this.getCoordinates();
            
            this.setStyles({ 
                        'top'  : ((dims.y-coors.height)/2)+'px',
                        'left' : ((dims.x-coors.width)/2)+'px',
                        'position' : 'fixed' // fixed o absolute 
            });
         
         }
          
});

entonces si tienes un div llamado midiv, bastaria con hacer

Código Javascript :

  $('midiv').centrar(); 
para centrarlo en la pantalla, o lo mismo con un input:

Código Javascript :

  $('miinput').centrar(); 


...Que en Jquery se programa con menos lineas de código que Mootools, nada mas cierto u.U, PERO esto no siempre es bueno, ademas en lo personal no me gusta para nada este tipo de sentencias:

Código Javascript :

 
// EN JQUERY 
a) 
  $("#lista1 li:last").hover(function() {
        $(this).addClass("activo");
    },
    function() {
        $(this).removeClass("activo");
    });  

// o 

b) 

   $('#elparent').find('ul').hide().end().find('li').click(function() {
        $(this).next().slideToggle();
    }); 



y aunq las entiendo porque ya tengo tiempito programando en Js y eh visto Jquery, no creo que alguien con poca o ninguna experiencia en Jquery, a primera vista entienda que hace cada una de ellas ..

Código Javascript :

  
// EN MOOTOOLS
a)  

  $$('#lista1 li:last-child').addEvents({
        mouseenter: function() {
            this.addClass('activo');
        },
        mouseleave: function() {
            this.removeClass('activo');
        }
    });

b)
 
   var div= $('div');
    div.getElements('ul').hide();
    div.getElements('li').addEvent('click', function() {
        this.getNext().slide('toggle');
    });



En Mootools es mucho mas claro, ademas si quisieras puedes implementar el encadenamiento de Jquery en Mootools , para el primer ejemplo:

Código Javascript :

 

Element.implement({
    hover : function(enter,leave){ // pasas como parámetro las 2 funciones. 
       return this.addEvents({ mouseenter : enter, mouseleave : leave }); 
    }
});

//y entonces tu puedes usar Mootools como en Jquery:

$$('#lista1 li:last').hover(function(){ // hover es el método que implementamos a nuestro objeto Element
   this.addClass('activo');
} // hasta aquí la primera función de los parámetros,
function(){
   this.removeClass('activo');
}) // y luego la 2da;



en pocas palabras, puedes hacer que Mootools funcione como Jquery, mas no lo contrario, porque MT te deja hacerlo a tu manera =).

Mootools es mas legible y ordenado que Jquery, ( su mismo core es muy legible =) ) lo que a pesar lo que dice su descripción "para programadores intermedios, o avanzados" es mucho mas fácil de entender y aprender que Jquery, y cuando digo "APRENDER", me refiero a "APRENDER Y DESARROLLAR".. la mayoría de personas que eh escuchado preferir a Jquery, en su vida han programado un solo Plugin desde cero.. (esto es mal acostumbrarse u.U, en trabajos serios necesitas saber mas q un ctrl + c y ctrl + v) simplemente jalaron los archivos js y colocaron el constructor del objeto o widget y listo !, esto hace que Jquery sea atractivo y saque de apuros rápidamente cierto u.U (por el soporte de la comunidad y la cantidad de plugins/ widgets disponibles para descargar) y es justamente por lo cual pienso que Jquery (q obviamente es muy bueno =) ) esta mas orientado o mejor enfocado al desarrollo de websites y de web apps (RIAS) pequeñas, mas se hace tedioso y complicado desarrollar RIA'S (medianas o grandes) sobre Jquery, te comienzas enredar entre tantas sentencias encadenadas, si no estas acostumbrado a comentar, considérate MUERTO jajaja, ademas la modularidad es difícil del lograr al ser Jquery una extensión de DOM esta orientado a los elementos del DOM, mas no a la integridad de las funcionalidades de un sistema especifico. Mootools te permite hacer SOFTWARE modular, limpio, bonito .. puedes tener un aplicación desarrollada en PHP con Codeigniter en MVC y con tu front end desarrollado tbm en MVC con Mootools fácilmente =).

En conclusión, Jquery o Mootools para el desarrollo de websites y apps pequeñas, pero Mootools es mucho mas recomendable para desarrollar RIA's.

Por gio.vl

8 de clabLevel



 

chrome
Citar            
MensajeEscrito el 18 Ene 2012 05:05 pm
Y si sabes desarrollar plugins desde cero, entiendes e implementas el MVC y ademas no usas sentencias tan enredadas, o sea, eres un buen programador, entonces JQuery puede ser igual de poderoso que Mootools.

Dependerá en gran medida de que tan bueno sea el desarrollador en cuestión.

Algún benchmark de rendimiento entre Jquery y Mootols podría ser un factor par la elección entre uno u otro.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

chrome
Citar            
MensajeEscrito el 18 Ene 2012 05:52 pm
gio.vl
Curiosamente yo encuentro más claro el código en JQuery que en MooTools de los ejemplos que has puesto. Además, en el código JQuery de ejemplo, está complicado innecesariamente.

Por DriverOp

Claber

2510 de clabLevel



 

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.