Software
MooTools (Mis herramientas orientadas a objetos) [4] es un marco de JavaScript ligero y orientado a objetos . Se publica bajo la licencia MIT gratuita y de código abierto . [5]
Descripción general
MooTools proporciona al usuario una serie de opciones más allá del JavaScript nativo. Éstas incluyen:
- Un marco extensible y modular que permite a los desarrolladores elegir su propia combinación personalizada de componentes. [6]
- MooTools sigue prácticas orientadas a objetos y el principio DRY . [7]
- Un componente de efectos avanzado, con transiciones optimizadas, como ecuaciones de suavización utilizadas por muchos desarrolladores de Flash. [8]
- Mejoras en el DOM , que permiten a los desarrolladores agregar, modificar, seleccionar y eliminar fácilmente elementos DOM. También se admite el almacenamiento y recuperación de información con el almacenamiento Element. [9]
El marco incluye funciones integradas para la manipulación de CSS , elementos DOM , objetos JavaScript nativos, solicitudes Ajax , efectos DOM y más. MooTools también proporciona una interfaz de programación de aplicaciones (API) detallada y coherente , [10] así como un módulo de descargas personalizado que permite a los desarrolladores descargar solo los módulos y dependencias que necesitan para una aplicación en particular. [11] [12]
Historia
Valerio Proietti fue el primer autor del marco y lo lanzó en septiembre de 2006 [13] tomando como inspiración Prototype y la base2 de Dean Edward. MooTools se originó a partir de Moo.fx, una popular biblioteca de efectos de JavaScript lanzada en octubre de 2005 por Valerio Proietti como complemento del Prototype Javascript Framework . [14] Puede usarse como una alternativa más ligera a script.aculo.us u otras bibliotecas más grandes. Proporciona efectos simples y básicos y garantiza un tamaño de biblioteca pequeño.
Mientras que Prototype extendió (creó prototipos) muchos de los objetos nativos String, Array y Function de JavaScript con métodos adicionales, Proietti deseaba un marco que (en ese momento) [15] extendiera aún más el objeto nativo Element [13] para ofrecer un mayor control de el modelo de objetos de documento (DOM). [dieciséis]
Componentes
MooTools incluye varios componentes, pero no es necesario cargar todos para cada aplicación. Algunas de las categorías de componentes son:
- Núcleo : una colección de funciones de utilidad que requieren todos los demás componentes. [17]
- Más : una colección oficial de complementos que amplían el Core y brindan una funcionalidad mejorada. [18]
- Clase : la biblioteca base para la creación de instancias de objetos de clase. [19]
- Nativos : una colección de mejoras de objetos nativos de JavaScript . Los nativos agregan funcionalidad, compatibilidad y nuevos métodos que simplifican la codificación.
- Elemento : Contiene una gran cantidad de mejoras y estandarización de compatibilidad con el objeto Elemento HTML . [20]
- Fx : una API de efectos avanzada para animar elementos de página. [21]
- Solicitud : incluye interfaz XHR , cookies, JSON y herramientas específicas de recuperación de HTML para que los desarrolladores las exploten. [22]
- Ventana : proporciona una interfaz entre navegadores para información específica del cliente, como las dimensiones de la ventana. [23]
Compatibilidad del navegador
MooTools es compatible y probado con: [24]
Énfasis en la modularidad y la reutilización.
Cada marco de JavaScript tiene su filosofía y MooTools está interesado en aprovechar al máximo la flexibilidad y el poder de JavaScript de una manera que enfatice una mayor modularidad y reutilización de código. MooTools logra estos objetivos de forma intuitiva para un desarrollador que proviene de un lenguaje de herencia basado en clases como Java con el objeto MooTools Class .
Una clase es un objeto de pares clave/valor que contiene propiedades o métodos (funciones). Class se mezcla y amplía sin esfuerzo con otras instancias de Class, lo que permite el enfoque más excelente de MooTools: la reutilización de código se logra maximizando el poder de la herencia prototípica de JavaScript, pero en una sintaxis de objetos de Class más familiar a los modelos de herencia clásicos. [25]
Programación orientada a objetos
MooTools contiene un robusto sistema de creación y herencia de clases que se asemeja a la mayoría de los lenguajes de programación orientados a objetos de base clásica . Por ejemplo, lo siguiente es el equivalente de MooTools de los ejemplos de la página de polimorfismo de Wikipedia:
var Animal = nueva Clase ({ inicializar : función ( nombre ) { este . nombre = nombre ; } });var Gato = nueva Clase ({ Extiende : Animal , hablar : función () { return '¡Miau!' ; } });var Perro = nueva Clase ({ Se extiende : Animal , hablar : función () { return 'Arf! ¡Arf!' ; } });var animales = { a : nuevo Gato ( 'Missy' ), b : nuevo Gato ( 'Mr. Bojangles' ), c : nuevo Perro ( 'Lassie' ) }; Objeto . cada ( animales , función ( animal ) { alerta ( animal . nombre + ':' + animal . hablar ()); }); // alerta lo siguiente: // // Missy: ¡Miau! // Sr. Bojangles: ¡Miau! // Lassie: ¡Arf! ¡Arf!
Ver también
Referencias
- ^ Anuncio de lanzamiento original
- ^ "Versión 1.6.0 · mootools/Mootools-core". GitHub .
- ^ "MooHerramientas". mootools.net .
- ^ "MooTools en diapositivas de FOSDEM" (PDF) . Archivado desde el original (PDF) el 23 de julio de 2011 . Consultado el 17 de febrero de 2010 .
- ^ El sitio web oficial de MooTools
- ^ Página de descarga principal de MooTools
- ^ Objeto de clase MooTools Archivado el 31 de agosto de 2008 en la Wayback Machine.
- ^ Clase de efectos (FX) de MooTools Archivado el 23 de junio de 2008 en la Wayback Machine.
- ^ Clase de elementos de MooTools: una lista completa de métodos de manipulación de elementos. Archivado el 5 de septiembre de 2008 en la Wayback Machine.
- ^ Una mejor manera de utilizar los elementos
- ^ Generador de núcleos de MooTools
- ^ MooTools Más constructor
- ^ ab Newton, Aaron (18 de septiembre de 2008). MooTools Essentials: la referencia oficial de MooTools para el desarrollo de JavaScript y Ajax (1ª ed.). Presione . págs. xvi. ISBN 978-1-4302-0983-6.
- ^ Newton, Aaron (18 de septiembre de 2008). MooTools Essentials: la referencia oficial de MooTools para el desarrollo de JavaScript y Ajax (1ª ed.). Presione . págs. ISBN 978-1-4302-0983-6.
- ^ La versión 1.6.1 de Prototype incluye "un sistema de almacenamiento de metadatos de elementos". Prototipo 1.6.1 lanzado Archivado el 1 de marzo de 2010 en archive.today
por Sam Stephenson, escrito el 1 de septiembre de 2009. Consultado el 21 de marzo de 2010.
- ^ Tenga en cuenta que MooTools no extiende el objeto nativo ( todas las primitivas de JavaScript como String y Function heredan de él), sino que proporciona un Hash conveniente para este propósito: piense en ello como si tuviera un conjunto de métodos de utilidad que permiten la manipulación de objetos casi sin esfuerzo. objetos JavaScript normales que de otro modo no se ven afectados por el proceso. ( Newton, Aaron (18 de septiembre de 2008). MooTools Essentials: la referencia oficial de MooTools para el desarrollo de JavaScript y Ajax (1.ª ed.). Apress . págs. xvi. ISBN 978-1-4302-0983-6.)
- ^ MooTools Core Archivado el 2 de octubre de 2009 en la Wayback Machine.
- ^ MooTools más Archivado el 4 de octubre de 2009 en la Wayback Machine.
- ^ Clase de MooTools Archivado el 31 de agosto de 2008 en la Wayback Machine.
- ^ Elemento MooTools Archivado el 5 de septiembre de 2008 en la Wayback Machine.
- ^ Clase MooTools Fx Archivado el 23 de junio de 2008 en la Wayback Machine.
- ^ Clase de solicitud de MooTools Archivado el 30 de julio de 2008 en Wayback Machine.
- ^ Además de obtener el tamaño de cualquier elemento, puede obtener fácilmente las dimensiones de la ventana. Archivado el 11 de septiembre de 2008 en Wayback Machine.
- ^ MooTools enumera su compatibilidad en su página de inicio.
- ^ jQuery frente a Mootools
Otras lecturas
- "La Introducción a la Arquitectura de MooTools". Mecánica Aplicada y Materiales .
- "Consulta interactiva basada en técnicas de sondeo largo de MooTools". Mecánica Aplicada y Materiales .
- Huerto, Leslie M.; Pehlivanian, Ara; Koon, Scott; Jones, Harley (31 de agosto de 2009). Marcos de JavaScript profesionales: Prototype, YUI, ExtJS, Dojo y MooTools (1ª ed.). Prensa Wrox . pag. 888.ISBN 978-0-470-38459-6.
- Newton, Aaron (18 de septiembre de 2008). MooTools Essentials: la referencia oficial de MooTools para el desarrollo de JavaScript y Ajax (1ª ed.). Presione . pag. 300.ISBN 978-1-4302-0983-6.
- Lecomte, Xavier (1 de junio de 2012). Descubra MooTools: un marco JavaScript para un sitio dinámico e interactivo (FR) (1ª ed.). Libros de dígitos. pag. 260.ISBN 978-2-8150-0215-8.
enlaces externos