Post Actualizado en julio 24, 2013


Frameworks de CSS

Desde el principio de su existencia la programación ha tratado de irse simplificando y mecanizarse de tal manera que con unos cuantos pasos o procesos se pueda realizar lo que antiguamente nos hubiera llevado bastante tiempo ejecutar, calcular, capturar, estructurar o diseñar,  y con esto obviamente ahorrarnos el tiempo que conlleva. En tiempos recientes esta […]

Desde el principio de su existencia la programación ha tratado de irse simplificando y mecanizarse de tal manera que con unos cuantos pasos o procesos se pueda realizar lo que antiguamente nos hubiera llevado bastante tiempo ejecutar, calcular, capturar, estructurar o diseñar,  y con esto obviamente ahorrarnos el tiempo que conlleva.

En tiempos recientes esta simplificación, por así llamarle, se ha incrementado notoriamente y es por ello que ahora es completamente común hablar de modelos de desarrollo, conjuntos estandarizados, procesos estructurados, bibliotecas de subprogramas, entre otros términos, al momento de referirnos y estudiar el desarrollo de sitios y programas.

Dentro de esta necesidad de estandarización, de mantener un orden y sencillez en nuestro código y estructura, han surgido los llamados frameworks. Aún siendo nuevos en el mundo de la programación web este término nos puede sonar bastante familiar, puesto que se emplea en muchos ámbitos del desarrollo de sistemas desde videojuegos hasta aplicaciones médicas.

Como es la primera vez que hablo de los frameworks en un artículo no está demás empezar a definir claramente lo que son y para qué sirven, ya que se encontrarán bastante con esta palabra mientras realizan sus investigaciones y debemos tener en claro a lo que vamos.

En términos generales, comunes y sencillos un framework es un esquema, un conjunto de piezas que nos ayudarán a construir y cargar nuestra estructura de software, lo que sostiene nuestra aplicación, el esqueleto que nos permitirá tener en pie nuestro sitio.

Por ejemplo tenemos los frameworks basados en MVC (Modelo Vista Controlador), que nos permiten organizar de manera separada la gestión de los datos, las operaciones, y la presentación de nuestro sitio. Nos da una estructura para que nosotros podamos “rellenar” cada parte con su cada cual para mantener un orden y así poder manejar mejor la información.

Mediante su uso podremos acelerar nuestra codificación, no hay necesidad de pensar en una estructura general puesto que ya nos las están dando, nos permite enfocaremos en cada aspecto por separado y abordar en cierto momento lo que involucra ese aspecto sin mezclarlo con otros, resulta más sencillo analizar y encontrar problemas, es más fácil entender y colaborar con el código que fue desarrollado por otra persona, nos permite reutilizar el código ya existente y ahorrarnos bastantes líneas de código, en fin representa una solución en tiempo y acción.

Ahora que ya sabemos a grandes rasgos lo que es un framework  y su común aplicación en los lenguajes del lado servidor (PHP, JSP, ASP.NET, Ruby) y cliente (Javascript), viene la pregunta que nos ha traído aquí, ¿Qué es un framework CSS? Básicamente es una librería que nos debería de hacer la vida más sencilla al momento de diseñar y programar nuestro sitio web.

Estas librerías se componen de varios archivos (.css) los cuales nos ayudarán a cargar lo que necesitamos en ese momento.  Algunos de ellos se dividen para tratar temas base por separado como los layouts, la tipografía, los forms, el CSS Reset, entre otros.

Fueron creados básicamente para ahorrarnos el tiempo de codificar lo que se refiere al diseño exterior de nuestro sitio. Entre las ventajas que conlleva su uso, esta la de hacer posible que el diseño de nuestras aplicaciones sea multi-navegador, es decir nos ahorrará el dolor de cabeza de tener que diseñar para aquellos navegadores que no cumplen con los estándares W3C, en teoría.
 La creación de diseños “cross-browser” siempre ha sido uno de los mayores problemas para los diseñadores o programadores que deciden dedicarse al desarrollo de hojas de estilo, esto fue una de las principales razones por las que se opto por crear estas librerías.

 Nuestra codificación puede verse agilizada gracias al uso de estos frameworks, aunque claro esto está condicionado a que aprendamos correctamente su uso, sobre todo al principio de la maquetación del sitio veremos grandes resultados en este aspecto, ya que con pocas acciones podremos tener la estructura hecha.

Con una buena documentación un framework se convierte en una gran herramienta para avanzar rápidamente en aspectos como el diseño del layout de la página, la estructura, la reutilización del código, aparte puedes contar con el apoyo de la comunidad que usa el mismo framework que tú escogiste y recibir consejos, alternativas, respuestas y soluciones.

Todo parece encajar, pero el punto es que la mayoría de los diseñadores prefiere omitir el uso de ellos para realizar sus sitios, esto en gran medida producido por el tiempo que se invierte en su aprendizaje, ya que algunos de estos frameworks son bastante complejos, además del hecho de que muchos puristas se sienten limitados en la elaboración de su código.

Es cierto que la mayor parte del código de estos no será utilizado, sobre todo si hablamos de un desarrollador o diseñador novato, aparte que si este es tu caso y lo que deseas es aprender, es preferible empezar a desarrollar hojas de estilo desde cero y manejando un simple editor plano, no hay necesidad aún de que te metas con ellos y en base a la solución de problemas y bugs que resulten aprenderás más sobre la marcha.
Entre los CSS frameworks más utilizados o “famosos” que existen actualmente circulando por la red, están “Blueprint CSS”,  “960 Grid System”, “YAML CSS Framework”, “Elements CSS Frameworks” y “YUI Grids CSS”, honestamente yo sólo he probado suerte con “Blueprint” y resulto ser de agradable experiencia aunque sinceramente en algunas ocasiones sigo prefiriendo programar mis propios CSS desde cero.

En conclusión, como pasa con el resto de los frameworks, aquellos que enfocados a CSS siempre serán una buena opción para cuando trabajamos en conjunto, en equipo o en un proyecto multi-desarrolladores que requiera la colaboración de varias personas sobre un mismo código, para así poder llevar un control y coordinar de manera estandarizada y organizada el proceso, también puede llevarnos a desarrollar más rápido cuando ya hayamos dominado sus particularidades como pasa con los frameworks de JavaScript, aunque sinceramente estos resultan más fáciles y útiles.

Todo es cuestión de cómo se quiera programar, el debate de usar o no estos frameworks viene de hace tiempo y sólo tu como desarrollador tendrás la decisión final, algunos lo ven como complicarse la vida mientras que otros piensan que es la solución, si tú estás en un punto intermedio y quieres experimentar su uso, te lo recomiendo que lo hagas, para que te familiarices y así puedas crear tu propio punto de vista, y quizás en un futuro si necesitas de un framework sea alguno diseñado por ti mismo.
 

Escrito por: Daniel Ernesto Navarro Herrera

OK HOSTING TEAM