Enjoy A New Student Discount All 55,000 Courses on sale for Only $12.99

Ends in 05h 23m 49s

El patrón MVC

La arquitectura en tres capas

Objetivo:

Compatibilizar aplicaciones web, aplicaciones cliente / servidor y aplicaciones de sobremesa, permitiendo la reutilización del codigo

  • Separar las responsabilidades en distintos niveles
    • Permite aislar los cambios en tecnologías a ciertas capas para reducir el impacto en el sistema total.
  • Aumentar la reutilización del código
    • Cada capa no tiene dependencia con otra, por lo que es más fácil que se pueden reutilizar
  • Aumentar la portabilidad al crear clases con alta cohesión
    • Las clases realizan trabajos especializados y se relacionan con interfaces perfectamente definidas
  • Mejorar el rendimiento.
    • Distribuir las capas entre múltiples sistemas (físicos) puede incrementar la escalabilidad, la tolerancia a fallos y el rendimiento.
  • Aumentar la independencia del hardware

Cuando hablamos de estructura en capas, habitualmente, planteamos tres capas:

  • Persistencia
    • Responsable del acceso a la base de datos para la obtención o grabación de toda la información
  • Lógica de negocios
    • gestionan la lógica empresarial de la aplicación y pueden acceder a los servicios del tercer nivel. La capa de la lógica de aplicación es donde se produce la mayor parte del trabajo de los procesos.
  • Interfaz de usuario
    • permiten al usuario interactuar con los procesos del segundo nivel de forma segura

Los tres niveles deben comunicarse entre ellos. Los protocolos abiertos estándar y las API expuestas simplifican esta comunicación. Puede escribir componentes de cliente en cualquier lenguaje de programación, como Java o C++. Estos clientes se ejecutan en cualquier sistema operativo, comunicándose con la capa de la lógica de la aplicación. Las bases de datos del tercer nivel pueden tener cualquier diseño, si la capa de la aplicación pueda consultarlas y manipularlas. La clave de esta arquitectura es la capa de la lógica de aplicación.

Esta estructura permite p.ej: la reutilización de los controladores, en cualquier entorno:

La ventaja que aporta esta forma de programar es la independencia de las capas; esto significa que cada capa utilizar la tecnología que mejor se adapte al entorno.

Frente a cambios de estructuras…

  • En web, la capa presentación se puede desarrollar con HTML, Javascript,…
  • En cliente-servidor, podemos utilizar Visual Basic, Java, o cualquier tecnología soportada por el cliente
  • En sobremesa, volveríamos a utilizar la tecnología soportada

Frente a cambios de Base de datos

  • Cambiamos la capa de acceso a datos

Cuando se requiere alta disponibilidad o redundancia, podemos hacer que cada capa corra en cualquier número de máquinas distintas

Por último, no se debe confundir capa con nivel; los niveles es la forma en que se distribuyen las capas. Esto es, si todas la capas están en la misma máquina, la aplicación tendrá 1 nivel

Deja un comentario

/*Si te ha gustado el artículo
no dudes en compartirlo*/

Facebook
Twitter
LinkedIn

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies

Ver mi IP

Ver ip de mi máquina
tipo valor
Ip: 3.238.87.31
Proxy: 3.238.87.31
Remote host: ec2-3-238-87-31.compute-1.amazonaws.com
Remote port: 35506
** 3.238.87.31