10 razones de porque mooTools ha crecido tanto

Leyendo el blog de Andres veo una interesante traduccion que menciona 10 punto bastante interesantes de porque MooTools[web] es tan famoso, la lista original fue realizada por Christoph , por mi lado desde el comienzo he utilizado prototype[web] sin embargo ultimamente he estado tentado a probar esta libreria ya que he utilizado algunos scripts bastante interesantes y funcionan muy bien y son bastante potentes.

1. No son solo efectos

Mucha gente cree que MooTools es únicamente para hacer animaciones, efectos a todo elemento disponible en la página. Y MooTools tiene un montón de cosas más que hacen de este framework una maravilla, drag&grop, manipulación del DOM, Extensión de funciones, Ajax, manipulación de cookies, assets, …

var droppables = $$('div.dropper');  var container = $('containment');  new Drag.Move('dragger', {'container': container, 'droppables': droppables});    droppables.addEvent('over', function(){  this.setStyle('background-color', '#000');  });    droppables.addEvent('leave', function(){  this.setStyle('background-color', '#ff3300');  });    droppables.addEvent('drop', function(){  this.setStyle('background-color', '#face8f');  });

2. Es modular

MooTools no es un solo un framework, es completamente modular y puedes personalizar no que necesitas descargar para ahorrarte peso de javascript. Esto quizas el usuario final no entienda o no le llame la atención, pero para un desarrollador es algo realmente digno de alabar ya que es realmente complicado conseguir un alto de grado de modularidad.

3. Se lee como un libro

Leer el código de MooTools es como leer un libro, la versión con código incluido es realmente explicita y simple de entender.

/*  Function: $type  Returns the type of object that matches the element passed in.    Arguments:  obj - the object to inspect.    Example:  >var myString = 'hello';  >$type(myString); //returns "string"    Returns:  'element' - if obj is a DOM element node  'textnode' - if obj is a DOM text node  'whitespace' - if obj is a DOM whitespace node  'arguments' - if obj is an arguments object  'object' - if obj is an object  'string' - if obj is a string  'number' - if obj is a number  'boolean' - if obj is a boolean  'function' - if obj is a function  'regexp' - if obj is a regular expression  'class' - if obj is a Class. (created with new Class, or the extend of another class).  'collection' - if obj is a native htmlelements collection, such as childNodes, getElementsByTagName .. etc.  false - (boolean) if the object is not defined or none of the above.  */    function $type(obj){ ....}

4. La comunidad alrededor ayuda

Esto ocurre con todas las comunidades, así que no me parece un punto muy importante. Pero el foro de MooTools no para de recibir preguntas y recibir respuestas.

Board statistics      Total number of registered users: 5056      Total number of topics: 5275      Total number of posts: 26414

5. Te ayuda a crear código orientado a objetos

MooTools te permite desarrollar con un código orientado a objetos, esto debido a la capacidad que tiene de extender los objetos nativos del lenguaje.

$('loadJson').addEvent('click', function(e) {  e = new Event(e).stop();  var url = 'http://demos.mootools.net/demos/Json.Remote/data.js';  var request = new Json.Remote(url, {  onComplete: function(jsonObj) {  addImages(jsonObj.previews);  }  }).send();  });

6. Esto es todo acerca de $type

El nativo typeof() de Javascript devuelve cosas similares a “String“, “Number“,… pero con MooTools $type nos lleva a otro nivel.

var Monkey = new Class({  initialize: function(){  this.fruits = [];  },  giveFruit: function(fruit){  //The Monkey only loves fruits!  if($type(fruit)=='fruit')  this.fruits.push(fruit);  return this;  }  });  var Banana = new Class({  $family: 'fruit'  });    new Monkey().giveFruit(new Banana());

7. La creación de elementos es muy fácil

Basta ver el código para ver lo fácil que es crear un elemento con MooTools.

new Element('div', {  'id': 'myDiv',  'class': 'someClass',  'styles': {  'width': '0px',  'height': '0px'  },  'events': {  'click': function(){  alert(this.getText()); //Alerts Hello  }  }  }).setText('Hello').injectInside(document.body).effects().start({  'width': [0, 200],  'height': [0, 100]  });

8. Gestores de eventos

MooTools incorpora su propia gestión de eventos. Puedes gestionar los eventos de todo: Clases, elementos, …

La opción más simple, la de añadir una gestión de eventos sobre un elemento sería algo tan simple como esto:

Element.Events.extend({  'keyenter': {  type: 'keyup',  map: function(e){  return e.key=='enter';  }  }  });    $('myInput').addEvent('keyenter', function(){  doSomething...  e.stop(); //Paramos la ejecución del proceso.  });

9 . Haz que se mueva

Hacer que los elementos de tu página sean dragables (movibles) es tan fácil como esto:

$('myElement').makeDraggable();

10. Hay plugins y extensiones mires donde mires.

En este mismo blog he comentado muchas de las nuevas extensiones y nuevas funcionalidades que MooTools nos ofrece, y gracias a la comunidad de detrás esto irá creciendo y aportando nuevas y valiosas aplicaciones, que harán las delicias de todos.

via Anieto2k

comment ¿Que opinas?

Artículos recientes

close

México intenta regular la industria del videojuego con su propia clasificación

La industria de los videojuegos ha tenido un crecimiento exponencial en todo el mundo; especialmente en territorio mexicano, donde la industria ha pasado de 11 mil 278 millones de pesos a 22 mil 852 millones tan…

close

play_circle_outline Campaña reconoce la capacidad creativa con humor

Few Can Do What You Do, es el nuevo lema de la campaña de Format una plataforma portafolio para creativos; esta campaña bajo el lema “Pocos pueden hacer lo que tu” reconoce la capacidad de…

close

play_circle_outline Como crear efecto de doble exposición en photoshop en menos de 1 minuto

El photoshop es de las herramientas imprescindibles en el catalogo de programas de un diseñador o creativo; no obstante, muchos no tenemos la pericia y conocimiento de todo lo que podemos lograr con el. Es…

close

Lista de estrenos en Netflix para Mayo 2017

Netflix continua incrementado su catalogo de películas y series cada mes; siendo el turno del mes de Mayo del 2017 donde llegarán nuevas temporadas de series como House of Cards y Unbreakable Kimmy Schmidt; así como…

close

play_circle_outline Mira el nuevo y emocionante trailer final de Cars 3

El día de ayer se dio a conocer el trailer final de la nueva entrega de la película de Disney y Pixar Cars 3; esta nueva entrega de la saga nos relata la ultima carrera…

close

Ilustraciones tipográficas inspiradas en el reino animal

El diseñador británico conocido como Marcus Reed ha creado una genial colección de ilustraciones tipográficas inspiradas en el reino animal; estas ilustraciones nos muestran a diversos animales desde el Cocodrilo hasta la Cebra con sus…

notifications Recién publicamos
close