YUI: Yahoo! User Interface

  • Por
YUI es un framework para desarrollo de webs que contiene librerías Javascript y CSS para crear interfaces de usuario típicas de los sitios de contenido enriquecido.
Una de las herramientas más interesantes para crear aplicaciones web enriquecidas del lado del cliente es YUI, por sus utilidades y componentes para desarrollo, pero sobre todo por la garantía de procedencia, uno de los sitios más tradicionales en el mundo de Internet, Yahoo!. Además tienen una magnífica documentación, tutoriales, etc. con las que cualquier persona puede empezar a dar sus primeros pasos en el desarrollo.

Pues sí, estas son las librerías Javascript y CSS que utilizan en Yahoo!, o al menos parte de ellas, y con las que construyen las aplicaciones web del portal. Según dicen en su página, son el resultado de cinco años de experiencia desarrollando y poniendo en producción los componentes que ofrecen para todos los interesados. Están a disposición con licencia BSD en Yahoo! Developer Network, en la siguiente URL:

http://developer.yahoo.com/yui/

Nota: La licencia BSD de las YUI, básicamente, permite su utilización, modificación y redistribución de las librerías, pero Yahoo! Mantiene el copyright. Puedes enterarte de todos los términos en la página de Yahoo! Developer Network.

YUI, un Framework Javascript más?

Quienes ya conocen otros Frameworks Javascript, pueden hacerse una idea de lo que YUI nos ofrece, una serie de librerías que permiten crear scripts en Javascript compatibles con los navegadores más habituales. Es decir, un paquete de códigos que cumple dos objetivos. Por una parte nos permiten solucionar las necesidades típicas que vamos a tener cuando desarrollamos aplicaciones web del lado del cliente, con funciones con las que operar sobre la marcha sobre los elementos de las páginas, responder a interacción del usuario, etc. Y por otra parte, ofrecen un modo de trabajo en el que no tenemos que preocuparnos por las particularidades de cada navegador de los usuarios visitantes.

La diferencia en este caso es que YUI contiene además una serie de herramientas, controles y componentes ya listos para implementar muchos de los dinamismos típicos de las páginas web. Además, YUI contiene además una serie de códigos CSS, que serían parecidos a los que ofrecen los frameworks CSS, para resetear los estilos típicos de los navegadores y marcar una base estándar para el diseño y maquetación, así como hacer rejillas con contenidos, etc.

Así pues, podemos decir que YUI va un poco más allá de la idea de Framework Javascript, ofreciendo además diversos widgets, y a la vez, lo mezcla con lo que conocemos de los Frameworks CSS. No cabe duda que es un buen paquete para desarrollar y maquetar una web avanzada y sin necesidad de empezar el camino desde cero.

Si quisiéramos un equivalente a lo que ofrece YUI por si sólo, tendríamos que utilizar diversos productos, como por ejemplo jQuery como Framework Javascript, jQuery UI para los componentes y widgets y 960 Grid System como framework CSS. Este listado es simplemente para hacernos una idea de todo lo que aporta YUI, pero es importante decir que hay muchos otros frameworks y librerías Javascript y CSS que las nombradas.

Distintas entregas de YUI

Podremos encontrar dos versiones distintas de YUI. Una más rodada y robusta, YUI2, lanzada en febrero de 2006 y otra más avanzada y experimental, YUI3 que vio la luz en septiembre de 2009. Estas dos versiones no son simplemente una actualización de la otra, sino básicamente productos distintos con diferentes alcances y métodos de desarrollo. No obstante las cosas que podemos hacer con uno y otro sí son similares.

La única ventaja de YUI2 en el momento de escribir este artículo es que tiene un completo set de componentes y widgets ya preparados para usar en páginas web, aunque durante 2010 se tiene prevista la publicación de un paquete similar para las librerías YUI3.

En el siguiente artículo veremos una demo con explicaciones para empezar a utilizar YUI3. Además contamos con un manual sobre YUI en el que aprederas bastantes cosas sobre este framework Javascript y CSS de Yahoo.