CMS vs Framework

Framework y Cms Muchas veces hemos leído en el Internet como la gente pregunta acerca de que utilizar cuando se necesita ‘X cosa’ para una aplicación si un framework o un cms?, y pues resulta que framework y cms son dos conceptos muy diferentes.

Comencemos explicando que es un CMS Un sistema de gestión de contenidos (Content Management Systems), es un programa, que permite crear una estructura de soporte para la creación y administración de contenidos de páginas web. Es una plataforma que contiene un conjunto de herramientas de software que controla una o varias bases de datos, donde se aloja el contenido, permite gestionar de forma uniforme y accesible un sitio web dinámico, proporcionando un entorno que posibilita la presentación, mantenimiento, ampliación y actualizaciones periódicas, con la colaboración de múltiples usuarios ya sea a través de Internet o Intranet que acceden al gestor a través del navegador web. Los CMS aportan herramientas para definir la estructura, el formato de las páginas y el aspecto visual, el sistema se encarga de gestionar muchos otros aspectos como son los menús de navegación. Permite manejar de manera independiente el contenido y el diseño o presentación.

Entre los tipos de CMS tenemos

  • Foros: permite la discusión en línea donde los usuarios pueden reunirse y discutir temas en los que están interesados. Ejemplos: phpBB
  • Blogs: permite la publicación de noticias o artículos en orden cronológico con espacio para comentarios y discusión. Ejemplos: WordPress
  • Wikis: sitio web dónde todos los usuarios pueden colaborar en los artículos, aportandoinformación o reescribiéndola, también permite espacio para discusiones. Es muy útil para material que irá evolucionando con el tiempo como los manuales de usuarios. Ejemplos: MediaWiki, TikiWiki , MoinMoin
  • eCommerce: Son sitios web para comercio electrónico. Ejemplo: osCommerce.
  • Portal: sitio web con contenido y funcionalidad diversa que sirve como fuente de información o como soporte a una comunidad. Ejemplos: Joomla!, Drupal, PHP-Nuke, Plone
  • e-Learning: Sirve para la enseñanza de conocimientos. Los usuarios son los profesores y estudiantes, tienen aulas virtuales donde se pone a disposición el material del curso. Ejemplos:Moodle, Dokeos

En resumen es un programa que sirve de plataforma para crear, editar, eliminar contenido por parte de los administradores, utilizando un ambiente gráfico para la administración, muchos de ellos necesitan una base de datos donde se almacena la información y son fáciles de instalar y configurar. El contenido será visto por los usuarios finales que visiten el CMS, y puede cambiarse el diseño sin alterar el contenido, finalmente un software que ofrece utilidades específicas.

Qué es un Framework Es una estructura de soporte de software definida orientada a objetos, compuesta de componentes personalizables e intercambiables para el desarrollo de una aplicación. Se puede considerar como una aplicación genérica incompleta y configurable a la que se puede añadir las últimas piezas para construir una aplicación concreta. Contiene un conjunto de clases concretas y abstractas que forman una aplicación genérica y reutilizable para un dominio de aplicaciones específico; típicamente, puede incluir soporte de programas, bibliotecas y un lenguaje interpretado entre otros software para ayudar a desarrollar y unir los diferentes componentes de un proyecto. El uso de un framework permite acelerar el proceso de desarrollo, la capacidad de reutilización del código asi se obtiene mayor productividad y un tiempo de mercado breve en el desarrollo de aplicaciones, además promueve buenas prácticas de desarrollo como el uso de patrones como los es MVC Entre los ejemplos de framework por lenguajes de programación se encuentran:

  • Para Ruby: Merb, Camping, Ramaze, Vintage, etc.
  • Para Perl: Catalyst, Gantry, Mojolicious, Dancer, entre otros.
  • Para Java: Spring, Struts, Jena y varios más.
  • Para Php: Codeigniter, kumbiaphp, symfony, cakephp, Zend, y muchos más.

En resumen un framework es una caja de herramientas que proporcionan una estructura de soporte de software para el desarrollo de una aplicación grande o pequeña e incluso de tu propio CMS. Ahora si bien los CMS como Joomla, Drupal, WordPress etc que son bajo licencia GPL, crecen a medida que se crean y añaden plugins, componentes, módulos etc, es porque estos tienen incorporado un framework que permite desarrollar sobre ellos para hacer sólo extensiones específicas para cada uno, cumpliendo con las convenciones de dicho framework, es decir, los componentes de drupal no funcionarán para joomla ya que sus clases, métodos, librerías no son las mismas. Entonces un CMS traerá incorporado un framework para permitir que el sitio web sea modular y escalable, y que desarrolladores terceros puedan implementar sus necesidades Para finalizar un CMS es una aplicación que tienes funcionalidades específicas de administración y que crecen a medida que se desarrollen siguiendo las convenciones del framework que posee. Por otro lado un framework es una estructura de soporte que te permite desarrollar aplicaciones tan grandes como tu propio CMS.

Fuente: nohemirojas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *