Inicio > Programacion > Modelo Vista Controlador en PHP

Modelo Vista Controlador en PHP

Cualquiera que haya usado PHP últimamente tiene que haber oído hablar del Modelo Vista Controlador.

Modelo Vista Controlador (MVC) es un patrón de arquitectura de software que separa los datos de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos. El patrón MVC se ve frecuentemente en aplicaciones web, donde la vista es la página HTML y el código que provee de datos dinámicos a la página. El modelo es el Sistema de Gestión de Base de Datos y la Lógica de negocio, y el controlador es el responsable de recibir los eventos de entrada desde la vista.

Tomado de Wikipedia

El MVC es por así decirlo la mejor forma de desarrollar una aplicación Web teniendo total control sobre cada una de sus partes ya que este nos separa por un lado la vista final del usuario y por otro lado las conexiones a la Base de Datos y tenemos un controlador que finalmente es el que se encarga de la lógica de la aplicación definiendo que se debe mostrar (Vista) y que datos debe cargar (Modelo).

MVC

Existen multitud de frameworks actualmente que trabajan siguiendo la lógica MVC de hecho a continuación les presento una lista de estos publicada en Lonerunners

Web Application Component Toolkit
Limb PHP Web Application Framework
EZ Publish
LogiCreate
Mojavi
Navigator
Phrame
ZNF
Achievo ATK
Akelos Framework
AModules3
Ambivalence
Aukyla PHP Framework
Binarycloud
Biscuit
bitweaver
Booby
Cake
Castor
Cgiapp
CodeIgniter
Copix
Core Enterprise PHP
FastFrame
Fusebox
FuseLogic
Konstrukt
Kumbia
Krysalis
Inek
InterJinn
Ismo
Medusa
Nexista
P4A
PHP on Trax
PHPulse
PhpMVC
Popoon
Prado
Qcodo
rwfphp
Seagull
Sitellite
SolarPHP
sQeletor
Studs
struts4php

Aunque también es posible desarrollar nuestro propio framework y en muchos casos, para aplicaciones simples o si no tenemos el tiempo para aprender a manejar todo un framework, esta seria le mejor opción.

Podemos encontrar en internet multitud de paginas donde nos explican como crear una aplicación con MVC de forma muy simple y paso a paso.

Acá les dejo una guía publicada en Jourmoly donde nos explican como crear una aplicacion simple utilizando Modelo Vista Controlador, La guía esta distribuida en dos partes Parte 1 y Parte 2.

Desarrollar nuestro propio framework puede traernos muchas ventajas ya que nosotros mismos conoceremos toda su lógica interna y como debe funcionar cada componente que le agreguemos luego, e incluso como ocurre con algunos es incluso mas fácil desarrollar el nuestro propio que aprender a manejar uno ya existente, aunque también tenemos que tener en cuenta que tenemos que ser mas cuidadosos con respecto a la seguridad y al manejo de variables de sesión.

Si el proyecto es muy grande tal vez sea mas conveniente usar un framework ya existente, ya que podremos olvidarnos de toda su lógica interna y dedicarnos simplemente al desarrollo de nuestros componentes e incluso podemos usar muchos de los que trae el framework por defecto o los que podemos encontrar por la Web.

JoomlaEn mi opinión una buena opción, no necesariamente la mejor, es Joomla ya que es un Framework open source que ha sido utilizado en muchos proyectos grandes y esta ampliamente soportado por la comunidad que siempre estarán dispuestos a echarte una mano, en un articulo pasado ya publique un manual de joomla en donde aprenderemos el desarrollo básico tanto de componentes como de módulos y pluggins, incluyendo el empaquetado y distribuccion, esto en caso de que se decidan por este framework, también les dejo un enlace a la Documentacion de Joomla. Y como ya les había dicho antes es un Framework Open Source, por lo que podremos curiosear por su lógica interna y conocer completamente su funcionamiento a aquellos que les interese.

Obviamente es mucha la informacion que podemos encontrar sobre MVC en la Red, asi que este articulo no pretende abarcarlo totalmente, pero si darle una mano a aquellos que pretenden iniciarse en este.

baleog Programacion , , , , ,

  1. Juanjo
    November 11th, 2009 at 17:30 | #1

    Que yo sepa, Joomla no es un framework, sino un gestor de contenidos, una aplicación web la cual puedes modificar a tu gusto.

  2. Andres
    January 15th, 2010 at 09:11 | #2

    De acuerdo con juanjo, Joomla es un CMS, los CMS te permmiten administrar contenidos en una pagina web de forma dinamica… este esta construido con el modelo MVC pero no es un framework… ¿y desarrollar nuestro framework?… una cosa es el patron de desarrollo M.V.C, otra cosa es un framework con los que se pueden construir aplicaciones bajo el patron MVC en PHP y otra cosa son los CMS como Joomla

  1. May 3rd, 2009 at 19:20 | #1
  2. May 3rd, 2009 at 20:14 | #2
  3. May 3rd, 2009 at 21:02 | #3
  4. May 4th, 2009 at 05:24 | #4