Está en la página 1de 29

ARQUITECTURA N CAPAS

Profesor: Carlos Garca Vergara.

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 Negocio Componentes de Negocio Entidades de Negocio

Componentes de Accesos a Datos Orgenes de Datos

Agentes de Servicios

Servicios

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)


SqlHelper

AdoHelper

SqlServer OleDb

Odbc

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 ) Tres capas que residen en dos ordenadores (Presentacin, lgica, datos). Tres capas que residen en tres ordenadores (Presentacin, lgica, datos).

2.

3.

También podría gustarte