Diferencia entre revisiones de «Mootools»
Línea 25: | Línea 25: | ||
* '''Window''': Proporciona una interfaz, válida para cualquier navegador, para obtener información del cliente, por ejemplo el tamaño de la ventana. | * '''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 | + | ==Compatibilidad entre navegadores== |
MooTools es compatible y está testado con: | MooTools es compatible y está testado con: | ||
Línea 36: | Línea 36: | ||
* [[Google Chrome]] | * [[Google Chrome]] | ||
+ | == Programación orientada a objetos == | ||
+ | MooTools contiene un robusto 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 MooTool 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') | ||
+ | }; | ||
+ | |||
+ | for(var animal in Animals) alert(animal.name + ': ' + animal.talk()); | ||
+ | |||
+ | // alerts the following: | ||
+ | // | ||
+ | // Missy: Meow! | ||
+ | // Mr. Bojangles: Meow! | ||
+ | // Lassie: Arf! Arf! | ||
Revisión del 10:59 15 mar 2010
|
MooTools My oriented object 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 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.
Sumario
Ventajas
Como otras tantas bibliotecas JavaScript, MooTools aporta al usuario muchas ventajas. Alguna de ellas:
- Es un Framework modular y extendible, el desarrollador puede elegir que componentes usar y cuales no.
- MooTools es orientado a objetos y sigue los principios DRY, que hacen de él un Framework rico, potente y eficiente.
- Componente avanzado de efectos Effects, con transiciones Transitions, de función parabólica, optimizadas y utilizadas por multitud de desarrolladores Flash.
- Framework desarrollado por programadores para programadores.
Componentes
MooTools incluye muchos components. A destacar es la aplicación de descarga disponible en la web de mootools que 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 categorias de componentes son esbozadas a continuación:
- Core: colección de funciones de apoyo de las que hace uso el resto de components.
- 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.
MooTools es compatible y está testado con:
- Safari 2 y 3
- Internet Explorer 6, 7 y 8
- Mozilla Firefox 1.5+, 2.0+, y 3.0+
- Opera 9.0+
- Camino 1.5+
- Google Chrome
Programación orientada a objetos
MooTools contiene un robusto 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 MooTool 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') }; for(var animal in Animals) alert(animal.name + ': ' + animal.talk()); // alerts the following: // // Missy: Meow! // Mr. Bojangles: Meow! // Lassie: Arf! Arf!