You are on page 1of 4

Patrón MVC

(Modelo Vista Controlador)

El patrón MVC es uno de los tantos que existen en la arquitectura de
software.

¿Qué es la arquitectura de software?
La Arquitectura de Software es la forma en la que se organizan los
componentes de un sistema, interactúan y se relacionan entre sí y con el
contexto, aplicando normas y principios de diseño y calidad, que fortalezcan y
fomenten la usabilidad a la vez que dejan preparado el sistema, para su propia
evolución

Características de la Arquitectura de Software: Atributos de calidad.
1. Disponibilidad de uso
2. Confidencialidad, puesto que se debe evitar el acceso no autorizado al
sistema
3. Cumplimiento de la Funcionalidad requerida
4. Desempeño del sistema con respecto a factores tales como la capacidad
de respuesta
5. Confiabilidad dada por la constancia operativa y permanente del sistema
6. Seguridad externa evitando la pérdida de información debido a errores
del sistema
7. Seguridad interna siendo capaz de impedir ataques, usos no autorizados,
etc.
Atributos inherentes al desarrollo de l software.
8. Capacidad de Configurabilidad que el sistema otorga al usuario a fin de
realizar ciertos cambios
9. Integrabilidad de los módulos independientes del sistema
10..Integridad de la información asociada
11.Capacidad de Interoperar con otros sistemas (interoperabilidad)
12.Capacidad de permitir ser Modificable a futuro (modificabilidad)
13.Mas fácil de mantener.
14.Capacidad de Portabilidad, es decir que pueda ser ejecutado en diversos
ambientes tanto de software como de hardware
15.Tener una estructura que facilite la Reusabilidad de la misma en futuros
sistemas
16.Mantener un diseño arquitectónico Escalable que permita su ampliación
(escalabilidad)
17.Facilidad de ser Sometido a Pruebas que aseguren que el sistema falla
cuando es lo que se espera (testeabilidad)

¿Qué es una interface? permiten crear código con el cual especificar qué métodos deben ser implementados por una clase. Controlador cacha el evento generado por el usuario. 4. 6.  Vista: Es la interfaz grafica que muestra los datos de manera legible al usuario. 1. Mediante un servicio Web se realiza la interacción con la base de datos y se regresan los datos solicitados. 5. Son las clases que interactuaran con la base de datos. es uno de los métodos más utilizados ya que con mediante él mantener y escalar el sistema es mas rápido y simple.  Controlador: Controla la interacción entre el usuario que solicita los datos de manera legible para él. Interfaces para crear modelos en PHP. Se realiza la llamada al evento para que se hagan las operaciones necesarias.El patrón MVC se encarga de separar la lógica de negocio y la interfaz. no permite la mezcla de lenguajes en el código al momento de programar la aplicación. MVC esta dividido en tres niveles:  Modelo: Es la lógico de negocios. sin tener que definir cómo estos métodos son manipulados. primero hay que definirla con la palabra reservada interface y para poder implementarla en el código usamos la palabra implements. Es el intermediario entre la Vista y el Modelo. Para poder implementar una interface. MVC en PHP. Petición del usuario. 3. La vista entrega los datos de manera legible para el usuario. En este codigo se muestra la manera de definir una interface que contra con una función. 2. interface Postre { public function set_ingredientes(). Funcionamiento de MVC. } Para implementar la clase creada: class Muffin implements Postre . El controlador vuelve a cachar ahora la respuesta para enviarla a la vista.

Algunas restricciones de las clases serian las siguientes:   No pueden tener el mismo nombre que una clase. Para lograr estas funciones debe seguir un seria de pasos  Debe reconocer el modelo que se esta trabajando en ese momento . y sin importar que tipo de relación guarden. Todo el código estático del GUI debería ser almacenado de manera remota en un servidor. Si hay varias interfaces que serán utilizadas por la misma clase. Con este podemos permiritir que el área de diseño trabaje de manera mas limpia y comoda. las cuales representan la “abstracción de un objeto” siguiendo un orden de “relación jerárquica” class B extends class A { }. además de asegurarnos de que el código de nuestra aplicación no colapsara por algún mal comando insertado por el programador grafico. 4. class MiClase implements A. EL controlador: Como ya sabemos. la clase podrá utilizar las funciones con las que la interface cuenta. La diferencia de las clases con las interfaces es que son un conjunto de métodos de diferentes métodos. Para que los datos sean manejados de manera correcta se siguen unos paso al momento de trabajarla. Diccionario de datos: contiene que referencias serán reemplazadas por que datos. Utilizaremos un ciclo foreach para hacer un recorrido por los datos del diccionario para buscar los que serán reemplazados. una clase SI puede implementar mas de una interface. En este caso seria la función de set_ingredientes. las interfaces no podrán utilizar métodos con nombres similares Interfaz Grafica(VISTA). Las clases abstractas.Despues de implementarla. La GUI o interfaz grafica es algo en lo que el o los arquitectos de sistemas no deben meterse. Obtener plantilla HTML: Se utiliza la función función file_get_contents() lo que nos permite llamar la plantilla para depues gurdarla en una variable. el controlador es quien tomas los eventos del usuario los manda procesar. estos son conocidos como la lógica de vistas: 1. no dejan de ser “clases”. Al final se imprime la plantilla modificada hacia el usuario. Diferencia entre interfaces y clases abstractas. A grandes rasgos seria este el funcionamiento normal de la vista. 3. 2. C { }. recibe los datos procesados y después los mandar a la vista para que sean presentados de manera legible al usuario. B.

.  Una vez reconocido el modelo. la información se enviara al modelo de Vista para que se presente de manera entendible. Al final. se encargara de hacer el llamado al modelo y realizar las operaciones que se tienen pendientes.