Frameworks web

escrito el 25 de Agosto de 2008 por Sebastián Romano

En el desarrollo web se entrelazan varias tecnologías (base de datos, XHTML, Javascript, Flash, XML, etc) y problemas comunes (internacionalización, codificación, flexibilidad de la estructura de datos, etc) .  Los frameworks se encargan  de manejar las tecnologías involucradas y brindar soluciones para facilitar el desarrollo.

Es así que nos proveen:

  • Independencia del motor de base de datos que usemos
  • Generadores de código XHTML
  • Soluciones Javascript integradas
  • Motor de plantillas
  • Librerías para internacionalización
  • Modelo orientado a objetos para facilitar el manejo de datos
  • Etc.

Más allá de estas bondades que sin duda mejoran la productividad, el hacer uso de un framework mejora el trabajo en equipo ya que todos hablamos el mismo idioma y las aplicaciones muestran siempre la misma estructura.

La variedad de frameworks es bastante grande por tanto tuvimos que realizar un pequeño análisis de los más usados para llegar al que usamos actualmente.

El otro Seba probó CodeIgniter si bien era liviano y simple le faltaban mejoras en cuanto al modelo de datos, la documentación era muy buena.

Personalmente me tocó probar Symfony, con más fama ya que Yahoo! lo estaba usando para alguno de sus nuevos proyectos. La documentación es muy buena, personalmente creo que es el más poderoso y completo. Al ser tan completo para nuestro caso tenía dos desventajas:

  • Larga curva de aprendizaje.
  • Los proyectos web por lo general no tienen una gran envergadura, por tanto la complejidad termina siendo excesiva.

Fue así que le tocó el turno a CakePHP. Lo comenzamos a usar en su versión 1.1 con muchas deficiencias y muy muy poca documentación. Aún así nos atrajo su facilidad de uso y la rapidez con que se aprende.

Por estos días se publicó la RC 1.2, la misma ha tenido muchas mejoras y sobre todo los líderes del proyecto vieron que uno de los principales problemas era la documentación y también está mejorada.

CakePHP nos brinda:

  • Independencia del motor de base de datos
  • Fácil realización del modelo de datos con relaciones entre tablas.
  • Modelo de datos orientado a objeto, la forma utilizada es de simple entendimiento por lo que se asimila rápidamente.
  • Integra soluciones Javascript / AJAX.
  • Manejo de plantillas y caché.
  • Internacionalización totalmente integrada.
  • Validación de datos.
  • Ruteo dinámico y flexible.

Hemos realizado sitios con estructuras de datos básicas y sitios complejos con administración de pedidos, productos, categorías, etc. para todos los casos CakePHP nos ha brindado una solución efectiva.

2 comentarios en este artículo

estuve investigando un poco la frames y me he decidio por symfony, pero tu dices que la curva de aprendizaje es mayor que la de cake, que tan sencillo te ha parecido cake? no he visto cake, pero si comencé con symfony y realmente es extenso,

erama
#1 Escrito el 24 de Mayo de 2009 a las 11:09 pm.

Deja una respuesta

XHTML: Puede usar las siguientes etiquetas, si sabe cómo:

nuestra mirada sobre el desarrollo web, noticias de envero y otras cosas que queremos compartir…

archivo