Mootools
MooTools | ||
---|---|---|
Información general | ||
Tipo de programa | Biblioteca de JavaScript | |
Desarrollador | The MooTools Dev Team | |
Licencia | Licencia MIT | |
Información técnica | ||
Programado en | JavaScript | |
Versiones | ||
Última versión estable | 1.6.0 ( 14 de enero de 2016 (9 años y 6 días)) | |
Enlaces | ||
MooTools (My object oriented tools) es un framework web orientado a objetos para JavaScript, de código abierto, compacto y modular. El objetivo de MooTools es aportar una manera de desarrollar JavaScript sin importar en qué navegador web se ejecute de una manera elegante. MooTools aporta una API documentada más enfocada a la orientación de objetos que la implementación estándar soportada por los navegadores web.
Características
MooTools presenta las siguientes características:
- Es un framework modular y extendible, el desarrollador puede elegir (específicamente) qué componentes usar y cuáles no.
- MooTools es orientado a objetos y sigue los principios DRY.
- Componente avanzado de efectos (Effects), con transiciones (Transitions), de función parabólica, optimizadas y utilizadas por multitud de desarrolladores Flash.
Componentes
La aplicación de descarga disponible en la web de Mootools permite al usuario descargarse sólo aquellas partes de la biblioteca que tiene pensado utilizar, y sus dependencias necesarias. Además, los usuarios pueden elegir el nivel de compresión de la descarga final. Algunos de las categorías de componentes son esbozadas a continuación:
- Core: colección de funciones de apoyo de las que hace uso el resto de componentes.
- Class: es la biblioteca base de MooTools para la instanciación de objetos
- Natives: Colección de mejoras al objeto nativo JavaScript, añadiendo funcionalidades, compatibilidad y nuevos métodos que simplifican el código.
- Element: multitud de mejoras y compatibilidades al objeto HTML
- Effects: API avanzada para animar Elements
- Remote: proporciona una interfaz para peticiones XHR, Cookie y herramientas para JSON
- Window: Proporciona una interfaz, válida para cualquier navegador, para obtener información del cliente, por ejemplo el tamaño de la ventana
Compatibilidad entre navegadores
MooTools es compatible y está probado en:[1]
- Safari 3+
- Internet Explorer 6+
- Mozilla Firefox 2+
- Opera 9+
- Google Chrome 4+
Programación orientada a objetos
MooTools contiene un sistema de creación y herencia de clases que se asemeja al de los lenguajes de programación orientados a objetos. Por ejemplo, aquí tenemos el equivalente en MooTools al ejemplo de polimorfismo en un lenguaje orientado a objetos.
var Animal = new Class({
initialize: function(name){
this.name = name;
}
});
var Cat = new Class({
Extends: Animal,
talk: function(){
return 'Meow!';
}
});
var Dog = new Class({
Extends: Animal,
talk: function(){
return 'Arf! Arf';
}
});
var Animals = {
a: new Cat('Missy'),
b: new Cat('Mr. Bojangles'),
c: new Dog('Lassie')
};
Object.each(Animals, function(animal){
alert(animal.name + ': ' + animal.talk());
});
// alerts the following:
//
// Missy: Meow!
// Mr. Bojangles: Meow!
// Lassie: Arf! Arf!