El juego de herramientas Mozilla

Índice

¿Qué es Gecko?

El motor de renderización empotrable multiplataforma Gecko es el corazón de Mozilla. No tiene interface de usuario, solo interpreta el contenido web y lo muestra. Esta capacidad es valiosa en un gran número de aplicaciones, algunas de las cuales poco tienen que ver con un "navegador". Por ejemplo, Gecko (en combinación con XUL; ver abajo)  se usa para mostrar la interface de usuario de las aplicaciones Mozilla.

El desarrollo de Gecko empezó en 1997 y ha evolucionado en un motor rápido y robusto de renderización que ofrece una arquitectura abierta, portable, extensible y personalizable. Ha sido empotrado en un gran variedad de productos de hardware y software de terceros, desde convertidores de HTML a PNG hasta IDEs comerciales. Gecko sirve como el motor de renderización para la ultima versión de Compuserve 7.0, también lo es en la última versión preliminar de Netscape 7.0 y la versión de prueba "beta" para el servicio de AOL.

Otros ejemplos comprenden varios proyectos de navegadores individuales:

Mas información técnica sobre el empotramiento de Gecko esta disponible en estas paginas, mozilla.org y codeguru.com.

¿Qué es XUL?

XUL (Lenguaje Extensible para la Interfaz de Usuario) es la  tecnología  de interfaz multiplataforma de usuario basada en XML de Mozilla.

Esta tecnología permite a los desarrolladores definir una interfaz gráfica multiplataforma para el usuario utilizando una mezcla de XML, HTML, CSS y ECMAScript (JavaScript). Un usuario puede modificar cualquier aspecto en la interfaz de usuario en una aplicación Mozilla basada en XUL (como es el mismo producto Mozilla) simplemente modificando archivos que utilizan la sintaxis estándar de una página web.

XUL utiliza Gecko para implementar la interfaz de usuario definida. La combinación Gecko/XUL es la base que permite a las aplicaciones Mozilla extenderse desde algo simple como una página web a ser algo sofisticado como el producto Mozilla 1.0. Éste soporta todos los elementos básicos que se encuentran en una interfaz grafica para usuario, incluyendo menus, controles de entrada, diálogos y árboles de control (a entender por ejemplo, en los diálogos de preferencias) y atajos de teclado.

Se puede encontrar un tutorial de XUL en XUL Planet. Allí también se encuentra un grupo de diapositivas sobre Construcción de aplicaciones con XUL y JavaScript, acompañado de algunos detalles de información técnica más ( 1; 2). También esta disponible mas información en mozilla.org.

¿Qué es XPCOM?

Los componentes Mozilla son componentes XPCOM. XPCOM (Modelo Componente-Objeto Multiplataforma) fue creado inicialmente como parte del proyecto Mozilla y ahora es utilizado por muchos otros proyectos. XPCOM es una variante ligera multiplataforma de el muy conocido Modelo Componente-Objeto (COM). Un artículo en el sitio de IBM discute esto más a fondo.

Todos los objetos XPCOM aprovechan automáticamente una envoltura ECMAScript (JavaScript), así muchos desarrolladores pueden disfrutar la multiplataforma y otros beneficios relacionados con el desarrollo que XPCOM provee sin tener siempre que preocuparse de XPCOM en si mismo.

¿Qué es Necko?

Necko (rima con “Gecko”) es la biblioteca de red de Mozilla. Este provee una API independiente de la plataforma para varias capas de establecimiento de una red que se extienden de transporte a las capas de presentación. Los componentes dentro de la biblioteca incluyen implementaciones  basadas en estándares de cabeceras del protocolo (HTTP, FTP, etc.) y varios núcleos de funcionalidades del sistema de red, incluyendo DNS, identificación, conexiones proxy y manejo de cache.

El API se utiliza en el producto de Mozilla y se puede utilizar también para escribir otros clientes de red. Esta disponible mas información de la biblioteca de red Necko en http://mozilla.org/projects/netlib/.

¿Qué es Imagelib?

La librería de representación de imagen (Imagelib) decodifica varios formatos de imágenes y así pueden ser mostradas por Mozilla. Esta es totalmente modular, compatible con los estándares, e incluye soporte para los formatos más populares de imagen como JPEG, PNG, GIF y PPM (Portable Pixel Map).

 

¿Porqué JavaScript (ECMAScript) es una parte importante del juego de herramientas de Mozilla?

JavaScript es un lenguaje de script desarrollado originalmente por Netscape; ahora está estandarizado por el comité ECMA-262 como  “ECMAScript”. Éste está presente no solo en páginas web sino también en aplicaciones de servidor.

Mozilla prevee dos implementaciones de JavaScript: la original y más extendida implementación esta escrita en C y esta empotrada en el navegador Mozilla, mientras la segunda implementación está escrita en Java. La información sobre implementaciones JavaScript, estándares, conjunto de pruebas, tutoriales y grupos de noticias pueden encontrarse en http://mozilla.org/js/.

En términos del juego de herramientas de Mozilla, el depurador JavaScript, Venkman, proporciona un poderoso entorno de depuración JavaScript para navegadores basados en Mozilla (excepto los navegadores solo-Gecko como K-Meleon y Galeon).

Como se ha desarrollado hasta ahora, Venkman permite a los desarrolladores hacer lo siguiente:

Se puede encontrar información adicional sobre Venkman, incluyendo una quía paso a paso, en http://mozilla.org/projects/venkman/.

¿Cuáles son los principales beneficios de utilizar el juego de herramientas Mozilla?

Una aplicación Mozilla funciona sin modificar y completamente funcional en cualquier plataforma soportada por Mozilla.

Mozilla es totalmente código abierto/software libre, lo que proporciona muchos beneficios para los desarrolladores. Por ejemplo, el código fuente abierto usado ampliamente tiende a ser mas robusto y seguro que el software propietario.

Si hay algún error, cualquier desarrollador esta autorizado a inspeccionar el código y arreglar el problema (y preferiblemente publicar el cambio en beneficio de todos: “da al código y él te devolverá a ti”).

Mozilla casi ha desaparecer la distinción entre aplicaciones de escritorio y páginas web, lo que conlleva varios beneficios. Un desarrollador que actualmente está programando aplicaciones de escritorio, con su dependencia dominante en elementos tales como componentes, APIS, objetos, eventos, métodos, propiedades e interfaces graficas de usuario sofisticadas, encontrará un entorno de desarrollo hospitalario. Sin embargo, mucha más tecnología estará basada en estándares consensuados, todo el poder del diseño web estará disponible directamente para enriquecer la experiencia del usuario y la aplicación será multiplataforma.

Inversamente, muchos diseñadores de páginas web encontrarán que pueden evolucionar sus habilidades para desarrollar aplicaciones completas sin necesidad de saltar fuera del área que les es familiar.

¿Qué herramientas de desarrollo están integradas a Mozilla?

Mozilla 1.0 contiene un Inspector DOM (para el cual también esta disponible un tutorial), Depurador JavaScript, consolas Java y JavaScript, y "Ver Código" con realce de sintaxis.

¿Qué seguridad utiliza el juego de herramientas?

La seguridad en Mozilla comienza con NSS, la biblioteca Network Security Services (Servicios de Seguridad de Red) escrito por ingenieros de Netscape. Esta biblioteca, que precede a la campaña de 1998 “Free the Lizard” ("Liberen al lagarto"), se beneficia de:

Sobre NSS está el Administrador Personal de Seguridad(PSM). PSM ejecuta operaciones criptográficas en nombre de un cliente tal como Mozilla y es accesible como componente utilizando ECMAScript (JavaScript).

¿A quién deben contactar los OEM que deseen utilizar el código base de Mozilla para información adicional?

Los OEM interesados en utilizar el código base de Mozilla pueden contactar a Mitchell Baker, Chief Lizard Wrangler de mozilla.org

Orange Style | Pacific Style | Plain Style