13 Noviembre 2009

Una semana después de su publicación, Google Closure recibe varias críticas de expertos

Google Closure es una librería de JavaScript, una alternativa más que los desarrolladores de aplicaciones web pueden utilizar semejante a otras librerías ya existentes, entre las más populares de estas destaca jQuery. Entre las características de Closure destaca el uso del Closure Compiler, una herramienta que pretende que el código JavaScript funcione de una forma más rápida. Como las otras librerías de JavaScript cuenta con todas las características usuales en este tipo de herramientas: Ajax, DOM manupulation, CSS control, etc.

Otra herramienta relacionada es el Closure Inspector, herramienta necesaria para ayudarse a trabajar con Firebug JavaScript Debugger.

A pesar de que la noticia del lanzamiento de una nueva librería JavaScript creada por Google generó mucho entusiasmo en el medio de los desarrolladores de sitios web, lo cierto es que conforme pasan los días la mayor parte de la comunidad de desarrolladores parece seguir inclinándose por jQuery, e incluso, medios de gran autoridad en el tema como la revista especializada SitePoint han publicado un artículo dedicado exclusivamente a señalar algunas fallas en la calidad del código.

Las críticas, bien argumentadas, son desarrolladas por Dmitry Baranovskiy, creador de otra popular librería de JavaScript: Raphaël.

El artículo ha desatado una interesante discusión sobre el poder de la marca “Google”, y el hecho de cómo cualquier producto lanzado por Google parece tener rápida aceptación sólo debido a la buena reputación de esta marca en el mercado. En este caso, Google ha sido duramente criticado sobre su responsabilidad de realizar pruebas más intensivas a la calidad de su código, y responsabilizarse aún más por el nivel de los productos que lanza al servicio de la comunidad de desarrolladores.

Links de Interés:



21 Agosto 2009

Opciones para crear gráficas web

Anteriormente vimos Open Flash Chart trabajando y lo sencillo que es de utilizar. Además de OFC tenemos otras opciones también importantes:

Google nos brinda el “API de Google Chart que permite generar gráficos de forma dinámica”.

Se utiliza llamando a la url de la API de la siguiente forma:

http://chart.apis.google.com/chart?cht=p3&chd=t:60,40&chs=250×100&chl=Hello|World

Este link devolverá una imagen con el gráfico.

Donde:

  • http://chart.apis.google.com/chart? es la ubicación del API de Chart.
  • & separa los parámetros.
  • chs=250x100 es el tamaño del gráfico en píxeles.
  • chd=t:60,40 son los datos del gráfico.
  • cht=p3 es el tipo de gráfico.
  • chl=Hello|World es la etiqueta del gráfico.

Te dejamos la guia del desarrollador de la API de Google Chart. Además si deseas una visualización mas personalizada (no solo para gráficos, puedes encontrar para tablas de resultados también) con varios ejemplos te recomendamos  Google Visualization API

graf

Si lo que buscas es algo en PHP, la librería de pChart te puede dar la solución para la personalización  de gráficas.

graf4

(más…)



Componente Flash para crear gráficos

Ahora tenemos una excelente posibilidad de incluir gráficos personalizados en nuestras páginas web gracias al componente Open Flash Chart (http://teethgrinder.co.uk/open-flash-chart-2/) el cual se encuentra gratuito y con licencia LGPL (http://www.gnu.org/licenses/lgpl.html).

Con este componente se pueden crear gráficos de: línea, barra, barra horizontal, barras apiladas, de candela, de área, pie, radar y de dispersión. Cabe mencionar que los gráficos tienen bastantes opciones de personalización para darle el gusto personal.

¿Qué tan complicado es usar este componente?

Se necesita incluir el componente en nuestro HTML y también debemos proveer el archivo de datos en el servidor. Dicho archivo de datos puede ser un archivo de texto plano, o un .PHP, Perl, Python o Java.

Para un gráfico simple, sencillamente se ubica el archivo data.txt en el sitio y se apunta el componente al URL de dicho archivo. No obstante, lo que en realidad queremos es cargar nuestros gráficos con datos extraídos de una base de datos o algo calculado de antemano. Para hacer esto, necesitamos crear el archivo de datos en algún lenguaje como PHP (el cual realizará los cálculos o recuperará datos de una base de datos) y apuntamos el componente a este archivo para que el gráfico se cargue con dichos datos.

Para hacer este trabajo más sencillo, Open Flash Chart incluye clases creadas en PHP, Perl, Python y Java las cuales se encargan de crear los datos a ser desplegados en los gráficos del componente.

Les adjunto un archivo comprimido con un ejemplo funcional en PHP que incluye todo. Para probarlo, su servidor web debe tener soporte para PHP, el navegador debe tener instalado el Flash Player y únicamente deben subirlo lugar deseado en su sitio web.

ejemplo-grafico

A continuación les muestro un pantallazo del gráfico de pie sencillo creado por el ejemplo.

Gráfico

Gráfico



21 Julio 2009

OOCSS, CSS Orientado a Objetos

Cuando se trata de construir nuestros archivos CSS, debemos considerar qué tan fácil es para cualquier otra persona agregar nuevos elementos al diseño o modificar los actuales.

Existe una forma más modular desarrollada por Nicole Sullivan, en la que podemos construir los archivos CSS: CSS Orientado a Objetos (OOCSS).  Esta forma pretende brindar extensibilidad y mantenibilidad a nuestro código CSS, sin dejar de lado la facilidad de comprensión del mismo.

El objetivo de esta metodología es “escribir código CSS escalable, sano y mantenible”, en palabras de Sullivan, quien usa y recomienda un “grid framework” de la conocida librería de Yahoo “Yahoo YUI”. Sin embargo, cada quien puede escribir su CSS sin necesidad de este framework pero aplicando los principios del OOCSS.

El adoptar el uso de OOCSS, implica el pensar en reutilización de estilos y su fácil mantenimiento. Cada componente es una estructura fija HTML, en la cual se aplican una seria de reglas CSS que controlan su diseño (estructura) y otra serie de reglas CSS que controlan su apariencia (piel o “skin”).

Una recomendación de Sullivan es evitar a toda costa lo que ella llama “selectores basados en la ubicación”, esto es, estilos que afectan el contenido según la ubicación que tengan en la página. Para esto, ella recomienda agregar una clase base para el objeto HTML y  agregar clases “hija” que son las que aplican los estilos según la ubicación en la página; con esto, este CSS puede ser fácilmente reutilizado en otro lugar del sitio.

Ejemplo

Supongamos que todas las páginas del sitio tienen un menú lateral, cuyo código CSS es el siguiente:


<div class=”menulateral”>
… contenido del menú ...
</div>

Ahora, supongamos que hay una página de noticias en la que queremos que este menú tenga un estilo diferente, por ejemplo, diferente color de fondo. Tradicionalmente, se agregaría una clase al <body> de esta forma:

<body class=”noticias”>

Con esto, las reglas de estilo que se escribirían para esa página serían algo así:

body.noticias .menulateral {
background-color: #FF0000;
}

El enfoque recomendado por OOCSS es diferente. En vez de tener una clase aplicada al <body>, se crea una clase por cada tipo de elemento que se quiere que se vea diferente. Con OOCSS, el ejemplo anterior cambiaría a lo siguiente:

.noticiasmenulateral { /* extends .menulateral*/
background-color: #FF0000;
}

Esta clase hereda de la clase existente que describe el estilo estándar para el elemento. Así, se aplica “en adición” a la clase base existente:

<div class=”menulateral noticiasmenulateral”>
… contenido del menú ...
</div>

Conclusión

Siguiendo estos principios, se puede tener una estructura bastante ordenada y reutilizable no solamente en el mismo sitio sino en otros proyectos; además que OOCSS brindaría beneficios significativos en cuanto al rendimiento de las páginas.

Al enfocarse en reutilizar estilos CSS en todo el sitio, con OOCSS los archivos CSS serían considerablemente más pequeños, aunque los archivos HTML sean un poco más grandes. Esto es deseable ya que el tamaño de los archivos CSS influencia directamente la cantidad de tiempo que el navegador usa para desplegar una página en blanco mientras el sitio carga. Archivos CSS más pequeños implican menos tiempo invertido leyendo una página en blanco.

Evitando los selectores basados en la ubicación, se reduce la cantidad de trabajo que el navegador debe hacer para determinar la apariencia de un elemento específico en la página. Tanto en dispositivos móviles, como en el escritorio de computadoras, puede producir un mejoramiento en el rendimiento del sitio.

Un aspecto que debe tomarse muy en cuenta, es la facilidad o complejidad que puede resultar del OOCSS en un equipo de trabajo, ya que motivar a todo un equipo a adoptar OOCSS puede convertirse en un compromiso muy grande. Lo que convendría es aplicar OOCSS en un proyecto pequeño y decidir si vale la pena aplicarlo en proyectos más grandes en los que varias personas se encuentran involucradas.

Información Complementaria



30 Septiembre 2008

Aptana Studio, una revisión general.

Aptana Studio Community Edition
Un IDE gratuito para desarrolladores Web

De manera muy general, la escogencia de un entorno de desarrollo llega a tener matices muy personales, ya que esta es la herramienta que un desarrollador web utilizará la mayor parte del tiempo.

Aptana Studio es un IDE gratuito para el desarrollo de aplicaciones web que está basado en la plataforma Eclipse y soporta diferentes formatos de archivos, entre los que podemos mencionar: Javascript, HTML, CSS, ScriptDoc, XML, entre otros. Además, este IDE provee coloreo de código, chequeo de sintaxis, organización estructural del código fuente, depuración, autocompletitud integrada con el DOM (Document Object Model) y diferentes marcos de trabajo (Extjs, jQuery, Scriptaculous, Dojo etc.) entre una lista bastante grande de opciones, herramientas y perspectivas.

Una característica muy útil es que brinda la posibilidad de asociar un proyecto con una conexión FTP para subir y descargar archivos directamente en un servidor de producción.

Adicionalmente se provee de un administrador de “Plugins” para el soporte de código PHP, Ruby on Rails, integración con Subversion, CVS y Git, soporte para librerías como Adobe Spry, Adobe AIR, Yahoo YUI, entre otras.

A pesar de ser un entorno de desarrollo muy completo, al estar basado en Eclipse, esto lo convierte en un IDE bastante pesado y aplicable sólo para computadoras con ciertas características en su hardware.

Conozca más de Aptana Studio



28 Agosto 2008

El atributo z-index.

El z-index es un atributo css que permite editar a un elemento hace referencia al orden en que los elementos se superponen unos con respecto a otros. Permite crear “capas” dentro de la web.

A continuación un link de referencia que presenta ejemplos:



Older Posts »

Switch to our mobile site