Sie sind auf Seite 1von 29

ARQUITECTURA N CAPAS

Profesor: Carlos Garca Vergara.


MCAD.NET
ARQUITECTURA CAPAS
PROGRAMACIN POR CAPAS
Definicin: Es un estilo de programacin, su
objetivo primordial es la separacin de la capa de
presentacin, capa de negocio y la capa de datos.
La ventaja principal: Es el desarrollo se puede llevar a cabo en varios
niveles y, en caso de que sobrevenga algn cambio.

En el diseo de sistemas informticos actuales se suele usar las


arquitecturas multilineal o Programacin por capas.
Adems, permite distribuir el trabajo de creacin de una aplicacin por
niveles; cada grupo de trabajo est totalmente abstrado del resto de
niveles, de forma que basta con conocer la API que existe entre niveles.

API (Application Programming Interface)


Es el conjunto de funciones y procedimientos o mtodos que ofrece cierta
biblioteca para ser utilizado por otro software como una capa de
abstraccin.
Ejemplos:
Microsoft Framework .NET
OpenGL
API for SCSI device interfacing
Javascript-C de Mozilla
Symfony para PHP
Arquitectura .NET

Comunicaciones

Operaciones

Seguridad
Usuarios

UI Componentes
UI Componentes de Procesos

Interfaces de Servicios

Workflows de Componentes Entidades de


Negocio de Negocio Negocio

Componentes de
Accesos a Datos Agentes de Servicios

Orgenes de Servicios
Datos
Data Access Logic Components
Objetos sin comportamiento que solo saben guardar un
Business Entity en la base de datos.
Generalmente son clases con mtodos estticos.
Utilizan alguna forma de acceso a datos simplificado como
Data Access Application Block.
Deben ser llamados por el Business Component de forma
que no se tenga en cuenta el origen de los datos.
Realiza todas las conversiones y validaciones necesarias
que estn relacionadas con el modelo de base de datos.
Capa de Presentacin
Esta capa es la que ve el usuario , presenta el sistema al
usuario, le comunica la informacin y captura la
informacin del usuario en un mnimo de proceso.
Esta capa se comunica nicamente con la capa de
negocio. Tambin es conocida como interfaz grfica y
debe tener la caracterstica de ser "amigable" para el
usuario generalmente se presentan como formularios.
Para muchas aplicaciones se usa la metfora del
formulario/informe
Capa de Presentacin
Habr formularios/pginas web de ingreso y
modificacin
Habr formularios/pginas web de vista de datos
Son los Componentes de Interfaz
Hay Componentes de Proceso de Interfaz
Componente de interface de usuario
Muestran datos a los usuarios
Adquieren y validan (en alguna medida) la entrada de
los usuarios
Interpretan gestos del usuario, para ejecutar una
accin
NO PARTICIPAN, No hacen nada por s solos.
Interfaz Windows
Para entornos desconectados o clientes ricos (rich
clients)
Opciones de implementacin ms simple:
Windows Forms
Interfaz Web
ASP.NET Web Forms
Basado en componentes en el servidor
Usa enlace de datos en los controles
Entorno de desarrollo integrado al resto de las
soluciones
Amplio manejo de estado y caching
Nuevo modelo de Formularios
Capa de Negocio
Aqu es donde, se reciben las peticiones del usuario y
se envan las respuestas tras el proceso. Se denomina
capa de negocio (e incluso de lgica del negocio)
porque es aqu donde se establecen todas las reglas que
deben cumplirse. Esta capa se comunica con la capa de
presentacin, para recibir las solicitudes y presentar
los resultados, y con la capa de datos, para solicitar al
gestor de base de datos para almacenar o recuperar
datos de l.
Toda aplicacin tiene cdigo para implementar reglas de
negocios.

Se puede seleccionar almacenar la lgica de negocios sobre


cada estacin de cliente, u optar por ejecutar la lgica de
negocios sobre un servidor de aplicaciones.

No toda la lgica de negocio es la misma algunas no


requieren un frecuente acceso a los datos, pero una
interface de usuario robusta necesitara de la lgica de
negocios para la validacin en la entrada de campos,
clculos en tiempo real u otras interacciones de usuarios.
Interfaces de servicios
Es el punto de entrada de la Capa de Negocio
Expone la funcionalidad que otras aplicaciones
pueden consumir
Se implementa con Servicios Web o Remoting (en
caso de aplicaciones distribuidas)
Se puede implementar con otras tecnologas:
BizTalk Server, Message Queues...
Entidades de Negocio
Son contenedores de datos
Encapsulan y ocultan los detalles de
representacin de datos
Puede encapsular datos que provengan de un
Recordset, y luego enviarlos a un XML
No tienen lgica de negocios
Es conveniente distinguir entre instancia y
coleccin de instancias
Entidades de Negocio
Se referencian desde la capa de presentacin,
desde la interfaz de servicio y desde los
componentes de negocio
Alternativas
DataSet
DataSet tipado
Objetos (individuales y colecciones)
XML
Capa de Datos
Se puede implementar:

Escribiendo cdigo ADO.NET para cda mtodo de cada


objeto: Create, Open, Update, Delete, Find.
Escribiendo cdigo con DAAB (Data Access
Application Block).
Usando DataAdapter, si se usan DataSets como
Business Entities.
Alguna herramienta de Object Relational Mapping.
Data Access Application Block
DAAB Abstract Factory (3.x)
AdoHelper
SqlHelper

SqlServer Odbc

OleDb
CAPA DE DATOS

Es donde residen los datos y es la encargada de acceder a los mismos. Est


formada por uno o ms gestores de bases de datos que realizan todo el
almacenamiento de datos, reciben solicitudes de almacenamiento o
recuperacin de informacin desde la capa de negocio.

Ejemplo:
Arquitectura de tres Capas para la Web.
Los datos y servicios aparecen separados.
Fcil de separar los datos de la lgica de negocio
El cliente recibe los datos y la informacin de forma
indirecta a travs servidor.
Aplicaciones orientadas a la Web.- en la capa de
presentacin esta el navegador que permite visualizar la
pg. Web l mismo que se comunica con el servidor Web y
a su vez con el servidor de aplicaciones conformando la
lgica de negocios y posteriormente se accede a la Base
de datos.
Aplicaciones no orientadas a la Web.- la interfaz
grfica es presentada en formularios, luego la capa de
negocio es implementada en el servidor de aplicaciones y
en la capa de datos est la base de datos.
Los Servidores de Aplicaciones actan como enlace entre los
servidores Web y los Servidores de Bases de datos.
Se fomenta la escalabilidad del sistema, la seguridad y la
reutilizacin de cdigo.
Ejemplo para la Web

Capa 1

Capa 2
En la capa de negocios del sitio www.blogger.com.
Capa 3
Esta capa contiene la Base de datos de los diferentes blogs
que se crean en el sitio la misma que se comunica con la
capa de negocio.
Pueden estar en un solo ordenador.
Lo mas usual es que haya una multitud de
ordenadores donde reside la capa de
presentacin
Las capas de negocio y de datos pueden
residir en el mismo ordenador.
En sistemas complejos se tiene 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
Diferencia entre Capas y Niveles

Capa.- Forma como una solucin es segmentada desde el


punto de vista lgico.

Nivel.- Forma en que las capas lgicas se encuentran


distribuidas de forma fsica.
Ejem
1. Tres capas que residen en un ordenador (Presentacin + lgica +
datos )

2. Tres capas que residen en dos ordenadores (Presentacin, lgica,


datos).

3. Tres capas que residen en tres ordenadores (Presentacin, lgica,


datos).

Das könnte Ihnen auch gefallen