Patrones de Diseño Para Persistencia y Transferencia

Slides:



Advertisements
Presentaciones similares
Las aplicaciones requieren datos persistentes
Advertisements

Arquitectura de Sistema de E/S
Red Social: “Un millón de Amigos”.
Red Social: “Un millón de Amigos”.
PROTOCOLOS DE PROYECTO CONTROL DE TRAFICO INTELIGENTE Alumno : Luis Carlos Illanes Quiroga.
TEMA1. Servicios de Red e Internet
PROTOCOLO SEGURO HTTPS
Análisis y Diseño de Software
Servicios Web.
Introducción a los Sistemas de Bases de Datos
SOCKETS INTRODUCCIÓN DEFINICIÓN TIPOS DE SOCKETS USO DE SOCKETS.
Modelos de Datos Modelado y Diseño de Bases de Datos
Ingeniería en Automática Industrial Software para Aplicaciones Industriales I Ingeniería en Automática Industrial Software para Aplicaciones Industriales.
Tipos de Servicios Web.
MSC. Sergio Valero Orea Redes MSC. Sergio Valero Orea
Arquitectura de la Aplicación
IMPLEMENTACIÓN DE ARQUITECTURA EMPRESARIAL
Servidores de nombres de dominio (DNS)
INTEGRANTES ALEXIS MENDOZA ALDAIR ARRIETA CARLOS PASTOR LORENA RODRIGUEZ ANTHONY JIMENEZ.
Sistemas Operativos Distribuidos Plataforma Cliente/Servidor
Diana Katherine Mosquera Vente María Elizabeth Angulo.
UNIDAD I Conceptos Básicos.
Administración de datos con MS-SQL Server y Visual Basic
PROTOCOLOS SNMP «VICTOR RAUL HAYA DE LA TORRE »
Ing. Karen Torrealba de Oblitas
Diseño de una base de datos Zavaleta Nolasco Karina
Tutor: Ing. Juan E. Talavera Horn 2010 GWT – EJB Patrones de diseño e integración.
Modelos de Bases de Datos
 Patrón de diseño de software.  Representar de forma Orientada a Objetos los datos de una Base de Datos Relacional.  Consiste en instancias de clase.
5. Sistemas de archivos avanzados1 Tema 5: Sistemas de Archivos Avanzados Resumen: –Sistema de archivos distribuido –File Replication Service.
Introducción a las Bases de Datos Relacionales Juan Alberto Sigüenza Escuela Técnica Superior de Informática Universidad Autónoma de Madrid.
AXEL LATORRE GABRIEL VALENZUELA GIAN PAOLO ALMEIDA ROMMEL CHIFLA ISABEL VILLEGAS INTEGRANTES.
Patrones de Diseño de Arquitecturas de Software Enterprise
ADO.NET VISUAL STUDIO.NET.
RESUMEN CAPITULO 6.
BASES DE DATOS CONCEPTUALIZACIÓN
En este capitulo se analizo la relación entre cliente y servidor de red habituales, como: HTTP FTP DNS DHCP Correo Electrónico INTRODUCCIÓN.
1 Capítulo 21: Interacción Cliente Servidor ICD 327: Redes de Computadores Agustín J. González.
COMPONENTES DEL SISTEMA OPERATIVO.
2: Capa Aplicación 1 Capa Aplicación: FTP ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al texto.
(PUERTA DE ENLACE O PASARELA) Jhon Alexander Serrano López
PROTOCOLO.
Introducción a los SOs.
APLICACIÓN DE NUEVAS TECNOLOGÍAS EN LA CONSERVACIÓN Y ANÁLISIS DEL PATRIMONIO CULTURAL Pensar Relacionalmente: Bases de Datos Relacionales (una visión.
Teoría de Sistemas Operativos Sistemas Archivos de Red
Modelo de 3 capas.
Interfaz EML-NML Orientada a Objetos y tecnologías adyacentes Ignacio Irigaray.
DEFINICION  Las bases de datos son una colección organizada de información dividida en campos los cuales nos proporcionan datos detallados e individuales.
Servicios de Red e Internet
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
2: Capa Aplicación 1 Capa Aplicación: File Transfer Protocol ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material.
File Transfer Protocol.
Jorge De Nova Segundo. SSH File Transfer Protocol (también conocido como SFTP o Secure File Transfer Protocol) es un protocolo del nivel de aplicación.
Protocolos del modelo TCP/IP
Proyecto Final Ampliación de Sistemas Operativos.
CALIPSO – WAN REPLICACION Javier Beleni Director de desarrollo.
Protocolos de comunicación TCP/IP
Punto 3 – Servicios SFTP/SCP Juan Luis Cano. SH File Transfer Protocol (también conocido como SFTP o Secure File Transfer Protocol) es un protocolo del.
Diseño de Redes - Capítulo 3
Sistemas operativos Presentado por: Juan Carlos Loaiza UNIVERSIADAD CATOLICA DE MANIZALES.
Gabriel Montañés León. TCP es un protocolo orientado a conexión es decir, que permite que dos máquinas que están comunicadas controlen el estado de la.
Acceso a Datos Erick López Ovando Licenciado en Informática.
El protocolo SSL (Secure Sockets Layer) fue diseñado con el objeto de proveer privacidad y confiabilidad a la comunicación entre dos aplicaciones. Este.
Comunicación a través de la red
Arquitectura de aplicaciones
Protocolos de Transporte y Aplicación
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED UNIDAD 2. SERVICIOS DHCP UNIDAD 3. SERVICIOS DNS UNIDAD 4. SERVICIOS DE ACCESO REMOTO.
© 2007 Cisco Systems, Inc. Todos los derechos reservados.Información pública de Cisco1 Conexión a la red Networking para el hogar y pequeñas empresas:
Definición: Es un estilo de programación, su objetivo primordial es la separación de la capa de presentación, capa de negocio y la capa de datos. ARQUITECTURA.
Transcripción de la presentación:

Patrones de Diseño Para Persistencia y Transferencia Introducción y conceptos básicos

Que son los patrones de persistencia? Repositorio Objeto A Objeto B Objeto C Son patrones de diseño que tienen como objetivo permitir el almacenamiento de objetos en un repositorio. El repositorio puede ser una base de datos, un archivo, memoria, etc. Introducción a patrones de persistencia. Mencionar que es un repositorio, en general. Ejemplificar con algunos casos concretos.

Patrones de persistencia Repository Row Data Gateway Table Data Gateway Data Mapper Active Record Unit Of Work Bridge Enumerar los patrones de persistencia mas usados, y mencionar en general la aplicación de cada uno en las arquitecturas actuales. Todos ellos tienen como objetivo intercambiar datos del estado del objeto con un repositorio, definitivo o temporal.

Unit of Work Mantiene una lista de los objetos afectados por una transacción de negocio y coordina la aplicación de los cambios y la resolución de problemas de concurrencia. Relacionar el uso del patrón con los conceptos de atomicidad. Como ejemplo concreto de aplicación de patrón nombrar el TransactionScope de .NET y como funciona (en general). Ventajas y desventajas. Como puede combinarse con otros patrones. Uso de MSDTC (se usa en ASOCIART, sin saberlo).

Active Record Un objeto que encapsula un registro de una tabla o vista, encapsula el acceso a base de datos, y suma lógica de dominio en esos datos. Mencionar casos de uso común del patrón. Su uso en data-binding en arquitecturas viejas (Control-DataControl-DB). Su uso en bases de datos ISAM.

Row Data Gateway Un objeto que actúa como una puerta de enlace a un solo registro en un origen de datos. Hay una instancia por fila. Aplicación del patrón como parte de otros patrones mas abstractos. Beneficios y contras de aplicación.

Table Data Gateway (DAO) Un objeto que actúa como una puerta de enlace a una tabla de base de datos. Una instancia se encarga de todas los registros de la tabla. Uso del patrón en la actualidad, como parte de patrones mas abstractos. Dataset tipados. Entity Framework.

Data Mapper Una capa de adaptadores que mueve datos entre los objetos y una base de datos mientras que los mantiene independientes el uno del otro. Notar la inversión de dependencia. Uso del patrón en la actualidad, como parte de patrones mas abstractos. Su aplicación en IoC. Ventajas y desventajas del patrón.

Repositorio 1/2 Media entre las capas de adaptación de dominio y datos utilizando una interfaz de colección para el acceso a los objetos de dominio. Muchas veces usado en conjunto con patrones de cache. Uso en la actualidad de repositorios abstractos. “Mapeo” a orígenes de datos concretos. Aplicación en manejos de cache e IoC. Ventajas y desventajas. Motivadores y desmotivadores del patrón.

Repositorio 2/2 Otra forma de ver el patrón. Generalmente asociado con Query Object y Data Mapper. Punto de aplicación de IoC. Combinación del patrón con Data Mapper y Query Object. Interacción de objetos de negocio con entidades de persistencia. Separación de los orígenes de datos. Eficiencia de operaciones CRUD vs List.

Que son los patrones de transferencia? Objeto A Objeto B Objeto C Objeto A Objeto B Objeto C Canal (RPC, TCP, HTTP, ETC..) Son patrones de diseño que tienen como objetivo permitir el transporte de objetos a través de canales de comunicación abstractos. Luego de pasar por el canal, los objetos tienen que ser “los mismos” que antes de hacerlo. Uso de patrones de transferencia y su relación con los patrones de persistencia. Uso histórico de patrones de transferencia. Binarización. Relación con “WFC” y Remoting.

Data Transfer Object Los objetos implementan una interfaz para serialización y un adaptador para su reconstrucción. Ilustrar la idea básica de transferencia con este patrón. Casos comunes de transferencia. Uso en WCF y Remoting.

Remote Facade Proporciona una fachada de grano grueso en los objetos de grano fino para mejorar la eficiencia través de una red. Aplicación del patrón en WCF, SOA y transferencia cruda por red.

Ejercicio teórico 1) ¿ Es posible decir que un patrón es mejor que otro ? ¿Por qué? 2) ¿ Es posible combinar patrones de persistencia ? 3) ¿ Que ventajas propone el patrón “Repository”? 4) ¿ Los patrones de persistencia están relacionados con los de transferencia ? ¿Por qué? La idea es resolver el ejercicio durante la exposición 1 – Hacer una reflexión acerca de que cada uno tiene ventajas y desventajas. 2 – Generar la idea de que son bloques, que pueden combinarse y modificarse para ser adaptados. 3 – Lograr que se realice un análisis de comportamiento y estructura. Llevar la idea de analizar a otros escenarios. 4 – Lograr una mayor abstracción en el análisis de arquitectura que en el diseño de detalle o programación.

Ejercicio práctico PACIENTES Apellido Nombre DNI Edad Pérez Jorge 10855222 24 Gómez Roberto 11412114 32 Gastón 21558473 28 Dada la tabla superior, modelar un patrón de persistencia “Repository” con persistencia en DB y archivo XML. 1) No es necesario usar “Abstract Class Factory”, pero si recomendado. 2) Suponer que las consultas retornan colecciones u otro objeto “rowset” (DataTable por ejemplo). 3) Proponer una posible implementación para el patrón DTO. 4) Proponer un patrón para persistencia en un repositorio remoto. La idea es resolver el ejercicio durante la exposición e ir construyendo el modelo en el pizarrón.

Fin ¿Preguntas?