Tema5:Programación por Capas Introducción Capa de

Anuncio
TEMA5
Tema5:Programación por Capas
● Introducción
● Capa de Presentación
● Capa de Negocios (Lógica de
Negocio)
● Capa de Datos
● Enlace a datos por medio de
Clases
● Métodos de Manipulación de
Datos
Objetivos:
Introducir al usuario en modelos de programación
avanzados, específicamente la programación en 3
capas.
Describir y utilizar cada una de las capas de
programación para la generación de aplicaciones
orientadas a objetos
Introducción
●
La programación por capas es un estilo de
programación en el que el objetivo primordial
es la separación de la lógica de negocios de la
lógica de diseño;un ejemplo básico de esto
consiste en separar la capa de datos de la
capa de presentación al usuario
Arquitectura de 3 capas: se basa más bien en como
será construido el entorno, una manera de decirlo en
romper el clásico concepto Cliente-Servidor para
introducir conceptos como Back End (Base de
Datos), Middleware (Servidor de Aplicaciones), Front
End (Interfaz de Usuario).
Introducción
●
●
●
●
Ventajas:En el desarrollo se puede llevar a cabo en varios
niveles y en caso que sobrevengan algún cambio.
En el diseño de sistemas informáticos actuales se suele usar
las arquitecturas multilineal o programación por capas.
Ademas, permite distribuir el trabajo de creación de una
aplicación por niveles; cada grupo de trabajo esta totalmente
abstraído del resto de niveles ,de forma que basta con conocer
la API que existe entre niveles
API(Aplication Programming Interface)
Es un conjunto de funciones y procedimientos o métodos que
ofrece cierta biblioteca para ser utilizado por otros software
como una capa de abstracción
Ejemplos:
●
Microsoft Framework.NET
●
OpenGL
●
Symfony para PHP
Gracias a la separación en capas quiere decir que
podemos cambiar de proveedor de base de datos, y no
necesitaremos reescribir toda la aplicación de vuelta, sino
solamente esa pequeña capa y reutilizaríamos la interfaz y
las reglas de negocios, o también podemos mantener las
reglas de negocios y el motor de base de datos, y
fácilmente cambiarnos de una interfaz WinForm a
WebForm, siempre la más dura de cambiar en la de
negocios ya que afecta en un nivel mínimo a las otras 2
capas.
Capas y niveles
●
El diseño que mas se utiliza actualmente es el
de 3 capas ;sin embargo,la programación
puede desglosare en mas capas
●
Capa de presentación
●
Capa de negocios
●
Capa de datos.
●
Capa de entidad
Cuando se habla de programación en N-Capas nos
referimos a la capa Entidad que generaría la cuarta capa
llamada N-Capas de la programación, si nos referimos al
hecho que la aplicacion proviene de un análisis, entonces
debemos remontarnos al Diagrama de Clases de Análisis
que propone una clase llamada la clase Entidad en donde
expone las entidades que participan directamente en un
proceso de la aplicación
Capas de presentación
●
Esta es la capa que ve el usuario ,presenta el
sistema al usuario ,le comunica la información
y captura la información del usuario en un
mínimo de proceso
Presentación. (Conocida como capa Web en
aplicaciones Web o como capa de usuario en
Aplicaciones Nativas)
Capa de Negocio
●
Esta es la capa que recibe las peticiones del usuario y se envía
las respuesta tras el proceso. Se denomina capa de negocio(e
incluso de lógica de negocio)Porque es aquí donde se
establecen todas las reglas que deben cumplirse.
●
Responsable del procesamiento.
●
Capa intermedia con capacidad
de mantenimiento y reutilización
Otras responsabilidades de la capa de negocio
●
Dependiendo de la arquitectura, permitir ser llamados
desde las interfaces de servicio, flujos de negocio u otros
componentes de negocio.
●
Validar entradas y salidas.
●
Exponer operaciones de compensación.
●
Dependiendo del diseño, realizar llamados a los
componentes de la capa de acceso a datos, para obtener o
actualizar los datos de la aplicación, o llamar servicios
externos.
●
Llamar flujos de negocio u otros componentes de negocio
●
Capa de datos
●
Esta capa se encarga de acceder a los
datos,se debe usas la capa de datos para
almacenar y recuperar toda la información de
sincronización del sistema
El día de mañana podemos utilizar el mismo sistema
con otra base de datos que no sea Access, por
ejemplo MySQL, cambiando solo el Acceso a datos,
quedando el esquema así:
Programación en capas
Todas estas capas pueden residir en un único ordenador (no
sería lo normal), si bien lo más usual es que haya una multitud
de ordenadores donde reside la capa de presentación (son los
clientes de la arquitectura cliente/servidor). Las capas de
negocio y de datos pueden residir en el mismo ordenador, y si
el crecimiento de las necesidades lo aconseja se pueden
separar en dos o mas ordenadores. Así, si el tamaño o
complejidad de la base de datos aumenta, se puede separar en
varios ordenadores los cuales recibirán las peticiones del
ordenador en que resida la capa de negocio.
Arquitectura de 3 niveles
De una aplicación basada
en la WEB
Si por el contrario fuese la complejidad en la
capa de negocio lo que obligase a la
separación, esta capa de negocio podría residir
en uno o mas ordenadores que realizarían
solicitudes a una única base de datos. En
sistemas muy complejos se llega a tener una
serie de ordenadores sobre los cuales corre la
capa de datos, y otra serie de ordenadores
sobre los cuales corre la base de datos.
El nivel intermedio implementa la lógica
comercial, la lógica de control y la lógica de
presentación, para controlar las interacciones
entre los clientes de la aplicación y los datos de
la misma.
Arquitectura MULTINIVEL
En una arquitectura de tres niveles, los términos "capas" y
"niveles" no significan lo mismo ni son similares. El término
"capa" hace referencia a la forma como una solución es
segmentada desde el punto de vista lógico:Presentación/
Lógica de Negocio/ Datos.
En cambio, el término "nivel", corresponde a la forma en que
las capas lógicas se encuentran distribuidas de forma física. Por
ejemplo:
· Una solución de tres capas (presentación, lógica, datos) que
residen en un solo ordenador (Presentación+lógica+datos). Se
dice, que la arquitectura de la solución es de tres capas y un
nivel.
· Una solución de tres capas (presentación, lógica, datos) que
residen
en
dos
ordenadores
(presentación+lógica,
lógica+datos). Se dice que la arquitectura de la solución es de
tres capas y dos niveles.
· Una solución de tres capas (presentación, lógica, datos) que
residen en tres ordenadores (presentación, lógica, datos). La
arquitectura que la define es: solución de tres capas y tres
niveles.
Descargar