Cuando utilizar CMS o Framework

June 18, 2021

Debo iniciar este blog con ambas definiciones, los CMS y Frameworks son herramientas fundamentales a la hora de desarrollar un proyecto pero, ¿Cuándo debo utilizarlas?

Para empezar, un “Framework” es un conjunto de librerías que automatizan ciertas tareas, las cuales sirven de base para la organización o desarrollo de software, representan una arquitectura de software que provee una estructura, funcionalidad definida y una metodología de trabajo. El uso del mismo aumenta la seguridad y tiene un código optimizado, enfocado a desarrollos desde cero, básicamente el desarrollador tiene más campo para poder realizar ciertos proyectos .

Dentro de los principales frameworks puedo mencionar:

  • Angular
  • Symfony
  • Ruby On Rails
  • DJango

La ventaja principal de los framework es que es muy manejable, el desarrollador puede tener el control sobre el desarrollo y conocimiento total de la arquitectura del software, pero toma mucho tiempo desarrollar un proyecto y no tiene administración de contenido.

CMS

Por otro lado, un CMS (Sistema de Gestión de Contenidos) permite crear una estructura de soporte para la creación y administración de contenidos, principalmente en las páginas web. Algunos CMS traen optimización para motores de búsqueda.

Facilita el acceso y la administración de contenido para los usuarios finales, esto permite que los usuarios no-técnicos fácilmente puedan agregar contenido al sitio o portal.

Algunos ejemplos de CMS;

  • Drupal
  • Wordpress
  • Joomla

La ventaja principal es que con los CMS el tiempo de desarrollo es mucho menor y brinda todas las herramientas que necesita el desarrollador para un proyecto pero, no permite profundizar en temas de programación o cambiar dichas herramientas a la medida.

Actualmente Drupal es considerado un CMF (Marco de gestión de contenidos) pues adapta tecnologías de un CMS y Framework creando un producto nuevo. Cuenta con tecnologías de un framework web como manejo de eventos, motor de renderizado y constructor de servicios web pero, también cuenta con tecnologías de un CMS como un UI para administrar contenido, traducciones, instalación de temas y administración en UI de usuarios, roles y permisos, entre otros.


En conclusión podría decir que dependiendo del tipo de proyecto y sus necesidades cada uno, tanto CMS como framework tienen la ventaja. Si es un proyecto menor o básico como una página web informativa se recomienda utilizar el CMS ya que es fácil de administrar (generalmente los administradores de una página web básica no saben mucho de tecnología) pero si es un proyecto más completo de desarrollo de software sería mucho más recomendable desarrollar en base a un framework.

¡Estaremos publicando otro blog post con un cuadro de soluciones que recomendamos al desarrollar con framework o CMF/CMS!