Patrones Creacionales Builder. Patrones Creacionales Abstract Factory. Patrones Creacionales Singleton. Patrones Creacionales Prototype

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Patrones Creacionales Builder. Patrones Creacionales Abstract Factory. Patrones Creacionales Singleton. Patrones Creacionales Prototype"

Transcripción

1 Temario Patrones de Diseño de Software Fundamentos de Ingeniería de SW Jocelyn Simmonds GOF: Patrones Creacionales Patrones Estructurales ILI-236 (JS) Patrones II 1 / 31 ILI-236 (JS) Patrones II 2 / 31 Patrones Creacionales Patrones Creacionales Factory Method Los patrones creacionales proponen soluciones para problemas de diseño en los que varía la forma en que se crean los objetos O existen restricciones particulares, por ejemplo, se puede crear sólo una instancia de una clase Los patrones Creacionales son: Factory Method Abstract Factory Builder Prototype Singleton Define una interfaz para crear un objeto, pero deja a las clases que implementan la interfaz decidir qué clase instanciar. Permite a una clase diferir la instanciación a las subclases Este patrón se usa cuando obtener un objeto es mas complejo que crear uno. Por ejemplo, un factory method puede decidir la clase del objeto en forma dinámica, o retornarlo de un pool (p.ej., conexiones de BD), etc. ILI-236 (JS) Patrones II 3 / 31 ILI-236 (JS) Patrones II 4 / 31

2 Patrones Creacionales Abstract Factory Provee una interfaz para crear familias de objetos relacionados o dependientes, sin especificar su clase concreta Patrones Creacionales Builder Permite encapsular la construcción de un producto complejo, y permite construirlo en varios pasos La clase Director es la responsable por definir el orden de creación de objetos. Recibe como parámetro un builder concreto, ejecuta las operaciones necesarias sobre este builder. ILI-236 (JS) Patrones II 5 / 31 ILI-236 (JS) Patrones II 6 / 31 Patrones Creacionales Prototype Permite crear una instancia de una clase dada, aunque sea compleja o costosa El Cliente no necesita conocer la clase concreta de la nueva instancia En Java, se usa método clone() Patrones Creacionales Singleton Permite asegurar que una clase tiene una y sólo una instancia class Singleton { private static Singleton instance; // Note: Constructor is protected protected Singleton() { } Singleton Instance() { // Use Lazy initialization if (instance == null) instance = new Singleton(); return instance; } } ILI-236 (JS) Patrones II 7 / 31 ILI-236 (JS) Patrones II 8 / 31

3 Patrones Estructurales Los patrones estructurales usan herencia y composición de interfaces para definir formas en que podemos componer objetos para obtener nueva funcionalidad Los patrones Estructurales son: Decorator Adapter Bridge Composite Facade Proxy FlyWeight Los Patrones GOF Estructurales presentan soluciones a un problema de diseño donde la variabilidad radica en la estructura de los objetos Veamos un ejemplo de un problema Estructural, y el patrón GOF que lo resuelve ILI-236 (JS) Patrones II 9 / 31 ILI-236 (JS) Patrones II 10 / 31 El diseño original de clases es el siguiente: Supongamos que tenemos el siguiente problema: Un profe ha decidido instalar locales de Cafetería (Café FISW) Y ha tenido un éxito tan rotundo y explosivo, que requiere actualizar cada vez más rápido su sistema de información donde se registran los distintos tipos de café que pueden venderse ILI-236 (JS) Patrones II 11 / 31 ILI-236 (JS) Patrones II 12 / 31

4 Café FISW ha decidido ofrecer además distintos complementos para hacer aún más sabroso su café Crema, Chocolate, Malicia, etc. Cómo calcular el costo, si cada complemento agrega su propio costo al tipo de Café Original? Bajo la estructura original del diseño, parece un poco complejo... Podríamos tener una explosión de Clases ILI-236 (JS) Patrones II 13 / 31 ILI-236 (JS) Patrones II 14 / 31 Una nueva pesadilla de Mantención Si cambia el costo del café, hay que modificar todos los métodos cost() Tratemos de mejorarlo, llevando la lógica hacia la Súper Clase Agreguemos los complementos como atributos booleanos de la súper clase SI tiene Crema, entonces crema = TRUE Implementemos el método cost() en la súper clase, para calcular el costo de los complementos Pero las sub clases deben seguir implementando cost() pues sólo ellas saben el costo de su café ILI-236 (JS) Patrones II 15 / 31 ILI-236 (JS) Patrones II 16 / 31

5 Sin duda de ha disminuido el número de clases Pero a nuevos tipos de productos (como te) no les sirven los complementos de la superclase (te con mocha??), pero aun heredarán métodos que no le corresponden Y si agrego nuevos complementos? Y si pido Un Café Negro con Doble Crema? Nuestro diseño aún no es capaz de soportar bien el cambio ILI-236 (JS) Patrones II 17 / 31 ILI-236 (JS) Patrones II 18 / 31 El objetivo a lograr para resolver este problema estructural es lograr un diseño que sea: Cerrado para Modificaciones: Que las clases que diseñemos no tengan que ser modificadas para agregar nuevas funcionalidades Abierto para Extensión: Que nuestras clases puedan tener nuevos comportamientos por medio de extensiones Revisemos una solución definitiva: Un enfoque de solución podría ser: Tengo un Tipo de Café Básico Le agrego Crema como complemento Le agrego Malicia como complemento Y luego calculo su costo Una Metáfora? Estamos decorando nuestro café con complementos ILI-236 (JS) Patrones II 19 / 31 ILI-236 (JS) Patrones II 20 / 31

6 Veamos gráficamente cómo decorar un Café: Nuestro café original: espresso Veamos gráficamente cómo decorar un Café: Con crema Para calcular el costo, se le pide a Malicia calcular su costo, que necesitará el costo de Crema esta el de Espresso ILI-236 (JS) Patrones II 21 / 31 ILI-236 (JS) Patrones II 22 / 31 Veamos cómo quedaría nuestro diseño para Café FISW Qué podemos saber con el mono anterior: Se puede usar uno o más decoradores para envolver a un objeto Decorado A un Decorador le podemos pasar como objeto a decorar (Decorado) tanto un objeto inicial (Espresso) como uno ya decorado (Espresso+Crema)... Los Decoradores deben tener el mismo súper tipo que los objetos que ellos decoran El decorador agrega su propio comportamiento antes o después de delegar el resto de trabajo al objeto decorado ILI-236 (JS) Patrones II 23 / 31 ILI-236 (JS) Patrones II 24 / 31

7 Patrones Estructurales Decorator Patrones Estructurales Adapter Convierte la interfaz de una clase en otra interfaz que el cliente espera. Permite que las clases trabajen en conjunto que de otra forma no podrían hacerlo, por interfaces incompatibles. Target: Define una interfaz específica del dominio, usada por el cliente. Adapter: Adapta la interfaz del Adaptado a la interfaz de Target. Adaptado: Define una interfaz existente que requiere adaptación Cliente: Colabora con objetos de acuerdo con la interfaz definida por Target. ILI-236 (JS) Patrones II 25 / 31 ILI-236 (JS) Patrones II 26 / 31 Patrones Estructurales Bridge Desacopla una interfaz (abstracta) de su implementación, así las dos pueden variar independientemente. Patrones Estructurales Composite Compone objetos en estructuras de árbol para representar jerarquías de todo-partes. Permite tratar a objetos individuales y compuestos de la misma forma. Útil cuando la clase y la definición de que hace varían harto ILI-236 (JS) Patrones II 27 / 31 Usar cuando no queremos distinguir entre objetos individuales y compuestos ILI-236 (JS) Patrones II 28 / 31

8 Patrones Estructurales Facade Provee una interfaz unificada para un conjunto de interfases en un subsistema. Define una interfaz de alto nivel que hace a un subsistema más fácil de usar. Patrones Estructurales Proxy Provee un subrogante para controlar el acceso a otro objeto ILI-236 (JS) Patrones II 29 / 31 ILI-236 (JS) Patrones II 30 / 31 Patrones Estructurales FlyWeight Permite que un objeto provea muchas instancias de objetos de más simples Usado para minimizar uso de memoria, se puede mantener una gran colección de objetos, compartiendo sus partes comunes. ILI-236 (JS) Patrones II 31 / 31

CLASE 10: MÁS PATRONES. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez

CLASE 10: MÁS PATRONES. Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez CLASE 10: MÁS PATRONES Universidad Simón Bolívar. Ing. de Software. Prof. Ivette C. Martínez Polimorfismo Problema: Cómo manejar las alternativas basadas en el tipo? Cómo crear componentes conectables?

Más detalles

PATRONES DE DISEÑO. FAVA - Formación en Ambientes Virtuales de Aprendizaje. SENA - Servicio Nacional de Aprendizaje

PATRONES DE DISEÑO. FAVA - Formación en Ambientes Virtuales de Aprendizaje. SENA - Servicio Nacional de Aprendizaje PATRONES DE DISEÑO 1. Generalidades 2. Patrones Gof 2.1. Patrones Creacionales 2.1.1.Fábrica Abstracta 2.1.2.Constructor 2.1.3.Método de Factoría 2.1.4.Prototipo 2.1.5.Singleton 2.2. Patrones Estructurales

Más detalles

Patrones de diseño en Java Los 23 modelos de diseño: descripción y soluciones ilustradas en UML 2 y Java

Patrones de diseño en Java Los 23 modelos de diseño: descripción y soluciones ilustradas en UML 2 y Java Introducción a los patrones de diseño 1. Design patterns o patrones de diseño 15 2. Descripción de los patrones de diseño 17 3. Catálogo de patrones de diseño 18 4. Cómo escoger y utilizar un patrón de

Más detalles

Decorador y Prototype

Decorador y Prototype Ampliación de Programación Orientada a Objetos Decorador y Prototype Javier Abrines Vives Juan Romero Benítez Patrón decorador Qu Qué es? Es un patrón estructural Describe como los objetos y las clases

Más detalles

Patrones de diseño en PHP Los 23 modelos de diseño: descripciones y soluciones ilustradas en UML2 y PHP

Patrones de diseño en PHP Los 23 modelos de diseño: descripciones y soluciones ilustradas en UML2 y PHP Introducción a los patrones de diseño 1. Design patterns o patrones de diseño 15 2. Descripción de los patrones de diseño 17 3. Catálogo de patrones de diseño 18 4. Cómo escoger y utilizar un patrón de

Más detalles

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura

Más detalles

IN77J Orientación al Objeto para el e-business. 6. Diseño

IN77J Orientación al Objeto para el e-business. 6. Diseño IN77J Orientación al Objeto para el e-business 6. Diseño Temario 6. Diseño Descomposición Realización de Casos de Uso Taller Patrones de Diseño 2 Descomposición Una de las principales técnicas para abordar

Más detalles

Capítulo 4 Patrones y Patrones de Diseño (ii)

Capítulo 4 Patrones y Patrones de Diseño (ii) Capítulo 4 Patrones y Patrones de Diseño (ii) Orientado a Objetos Ingeniería Informática Ingeniería Técnica de Informática de Sistemas y Gestión Optativa (6 créditos) http://www.info-ab.uclm.es/asignaturas/42579

Más detalles

Lógica de Negocios. Esteban Calabria 2007

Lógica de Negocios. Esteban Calabria 2007 Lógica de Negocios Esteban Calabria 2007 Lógica de Negocios Para organizar el Layer de Negocios Transaction Script Table Module Domain Module Service Layer Scripting Conceptos Previos Glanularidad Interfaces

Más detalles

Instructivo para la elaboración de un Manual Técnico

Instructivo para la elaboración de un Manual Técnico Instructivo para la elaboración de un Manual Técnico Autora: Ing. Alena González Reyes. (agonzalez@ceis.cujae.edu.cu) Ciudad de la Habana, Cuba Marzo, 2010 Índice 1. Introducción... 3 2. Confección...

Más detalles

Patrones de diseño: Test 1

Patrones de diseño: Test 1 Patrones de diseño: Test 1 1. Cuál es el objetivo del patrón Strategy? a) Definir el esqueleto de un algoritmo dejando la implementación de algunos de los pasos del esqueleto a las subclases. b) Permite

Más detalles

Introducción a la Programación de Videojuegos y Gráficos

Introducción a la Programación de Videojuegos y Gráficos Introducción a la Programación de Videojuegos y Gráficos GRADO EN INGENIERÍA INFORMÁTICA CURSO 2012/2013 T2: ARQUITECTURA Y LÓGICA DE VIDEOJUEGO 2.1. Ingeniería del software aplicada a videojuegos (paradigmas

Más detalles

2.2.- Paradigmas de la POO

2.2.- Paradigmas de la POO 2.2.- Paradigmas de la POO Los principios propios de la orientación a objetos son: 2.2.1.- Abstracción de Datos 2.2.2.- Encapsulamiento 2.2.3.- Ocultamiento 2.2.4.- Herencia 2.2.5.- Polimorfismo Cualquier

Más detalles

Patrones de Diseño. Ezequiel Postan. 1 Libro e índice. 2 Introducción

Patrones de Diseño. Ezequiel Postan. 1 Libro e índice. 2 Introducción Patrones de Diseño Ezequiel Postan 1 Libro e índice Gamma, E., Helm, R., Johnson, R., Vlissides, J., Patrones de diseño, Addison-Wesley, 2003. Páginas 2-69: Introducción. Composite. Strategy. Decorator.

Más detalles

Índice. http://www.dicampus.es

Índice. http://www.dicampus.es Módulo 2 UML Índice Introducción a UML Lenguaje Unificado de Modelado (UML) Diagramas UML Diagramas de casos de uso Diagramas estructurales: Clases Diagramas estructurales: Objetos Diagramas de interacción:

Más detalles

UML 2 Iniciación, ejemplos y ejercicios corregidos

UML 2 Iniciación, ejemplos y ejercicios corregidos Ediciones ENI UML 2 Iniciación, ejemplos y ejercicios corregidos (3ª edición) Colección Recursos Informáticos Contenido Contenido 1 Capítulo 1 Introducción 1. Motivaciones de la obra.....................................

Más detalles

TIPOS DE PATRONES. PATRONES DE DISEÑO: Las soluciones probadas para el diseño de software. En estas nos vamos a centrar.

TIPOS DE PATRONES. PATRONES DE DISEÑO: Las soluciones probadas para el diseño de software. En estas nos vamos a centrar. TIPOS DE PATRONES Hoy, podemos encontrar literalmente miles de patrones definidos. Resulta imposible para un programador conocerlos todos, ni mucho menos probarlos o valorarlos. Así que necesitamos una

Más detalles

Patrones de diseño orientado a objetos

Patrones de diseño orientado a objetos Patrones de diseño orientado a objetos Programación Orientada a Objetos Facultad de Informática Dep. Ingeniería del Software e Inteligencia Artificial Universidad Complutense Madrid Hacer software no es

Más detalles

Patrones de Diseño Orientados a Objetos 2 Parte

Patrones de Diseño Orientados a Objetos 2 Parte Patrones de Diseño Orientados a Objetos 2 Parte Patrón Observador Observer (Patrón de Comportamiento) Patrón Observador Observer Observador (en inglés: Observer) es un patrón de diseño que define una dependencia

Más detalles

Nombre del patrón: command orden (también es conocido como Action y Transaction)

Nombre del patrón: command orden (también es conocido como Action y Transaction) Command Nombre del patrón: command orden (también es conocido como Action y Transaction) Clasificación del patrón: Patrones de comportamiento. Problema: Necesidad de enviar peticiones sin saber nada acerca

Más detalles

Resumen de clase Ejemplos creacionales. Ideas de Diseño sobre ejercicios anteriores

Resumen de clase Ejemplos creacionales. Ideas de Diseño sobre ejercicios anteriores Resumen de clase Ejemplos creacionales Ideas de Diseño sobre ejercicios anteriores 1 cuatrimestre 2009 Contenido EJEMPLO CLIENTES DE UNA TARJETA DE CRÉDITO: ENUNCIADO...3 SOBRE EL DOMINIO...3 SOLUCIÓN

Más detalles

Patrones de diseño. Programación III.I.T.I. de Sistemas. Contenidos. Información sobre patrones de diseño. Motivación.

Patrones de diseño. Programación III.I.T.I. de Sistemas. Contenidos. Información sobre patrones de diseño. Motivación. Departamento de Informática Universidad de Valladolid Programación III.I.T.I. de Sistemas Patrones 1 Contenidos Programación III.I.T.I. de Sistemas Patrones de diseño Patrones de diseño Introducción Conceptos

Más detalles

Patrones de diseño. Sesión 1: Introducción y patrones básicos. Especialista Universitario Java Enterprise

Patrones de diseño. Sesión 1: Introducción y patrones básicos. Especialista Universitario Java Enterprise Sesión 1: Introducción y patrones básicos Titulo Módulo 2006-2007 Depto. Ciencia de la Computación e IA Titulo sesión-1 En el desarrollo de aplicaciones J2EE ( y no J2EE!) se presentan una y otra vez los

Más detalles

Patrones de diseño. Patrón básico Handler. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez)

Patrones de diseño. Patrón básico Handler. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Patrones de diseño Patrón básico Handler Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Patrones de diseño Introducción Objetivos: Diseño específico para el problema, pero general para

Más detalles

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Tipos de herencia Herencia y niveles de visibilidad Herencia y creación Redefinición de métodos Conversión

Más detalles

TRABAJO DE DIPLOMA CÓDIGO DE MATERIA 29

TRABAJO DE DIPLOMA CÓDIGO DE MATERIA 29 TRABAJO DE DIPLOMA CÓDIGO DE MATERIA 29 Titular: Dario Guillermo Cardacci FACULTAD DE TECNOLOGÍA INFORMÁTICA UNIVERSIDAD ABIERTA INTERAMERICANA 1 ÍNDICE GUÍA DE TRABAJOS REVISIÓN CONCEPTUAL... 3 GUÍA DE

Más detalles

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso 2010 2011. Cuatrimestre de otoño. 17 de Enero de 2011 1. (0,75 PUNTOS) Identificad a continuación las sentencias que son ciertas, descartando

Más detalles

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos: Tutorial de UML Introducción: El Lenguaje de Modelamiento Unificado (UML - Unified Modeling Language) es un lenguaje gráfico para visualizar, especificar y documentar cada una de las partes que comprende

Más detalles

Patrones de Diseño EJERCICIOS

Patrones de Diseño EJERCICIOS EJERCICIOS Ingeniería del Software I Carlos Blanco Universidad de Cantabria Introducción Un patrón es una solución probada que se puede aplicar con éxito a un determinado tipo de problemas que aparecen

Más detalles

Tema: Patrones de Diseño.

Tema: Patrones de Diseño. Programación II. Guía 13 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Patrones de Diseño. Objetivos Específicos Implementar la aplicación de patrones de diseño como herramientas

Más detalles

ESCUELA POLITÉCNICA NACIONAL

ESCUELA POLITÉCNICA NACIONAL ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA EN SISTEMAS GUÍA PRÁCTICA PARA EL USO DE PATRONES DE DISEÑO EN EL DESARROLLO DE SOFTWARE PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN SISTEMAS

Más detalles

Factory method (Gamma et al.)

Factory method (Gamma et al.) Factory method (Gamma et al.) Define una interfaz para crear un objeto pero deja a las subclases decidir que clase instanciar Motivación: Consideremos un framework que presenta múltiples documentos al

Más detalles

Resumen de clase. Ejercicio Clientes de una Tarjeta de Crédito (Introducción al Decorator Pattern)

Resumen de clase. Ejercicio Clientes de una Tarjeta de Crédito (Introducción al Decorator Pattern) Resumen de clase Ejercicio Clientes de una Tarjeta de Crédito (Introducción al Decorator Pattern) 2 cuatrimestre 2008 Contenido ENUNCIADO...3 SOBRE EL DOMINIO...3 SOLUCIÓN...4 DE QUÉ LADO CAE LA PELOTA?...4

Más detalles

Universidad Tecnológica Emiliano Zapata Tecnologías De la Información Y comunicación Área Sistemas informáticos

Universidad Tecnológica Emiliano Zapata Tecnologías De la Información Y comunicación Área Sistemas informáticos Universidad Tecnológica Emiliano Zapata Tecnologías De la Información Y comunicación Área Sistemas informáticos Rivera Figueroa Gerardo René Alvares Flores Jairo Ángeles Pastor Luis Eduardo Gonzales Sarabia

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Encapsulamiento: Control de Acceso Clases en Java (1) UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO En Java se organizan las clases en paquetes

Más detalles

Validación de Patrones de Diseño de Comportamiento a través de Perfiles UML

Validación de Patrones de Diseño de Comportamiento a través de Perfiles UML Validación de Patrones de Diseño de Comportamiento a través de Perfiles UML 1 INDICE GENERAL CAPITULO I... 4 Especificación de Patrones de Diseño... 4 1.1 Patrones de diseño... 4 1.1.1 Concepto... 4 1.1.2

Más detalles

Reutilización del Software. Patrones de Diseño

Reutilización del Software. Patrones de Diseño Reutilización del Software Patrones de Diseño 1 Introducción El diseño OO es difícil y el diseño de software orientado a objetos reutilizable lo es aún más. Los diseñadores expertos no resuelven los problemas

Más detalles

Curso de Java POO: Programación orientada a objetos

Curso de Java POO: Programación orientada a objetos Curso de Java POO: Programación orientada a objetos Luis Guerra Velasco Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Introducción a la POO 2 Herencia y polimorfismo 3 Empaquetado de proyectos

Más detalles

Programación en Java. Programación en OO

Programación en Java. Programación en OO Programación en OO Lección 4:Programación en OO 1. Herencia 2. Modificadores de Acceso 3. Interfaces Herencia Es la acción en la que una clase obtiene los métodos y propiedades definidos en otra clase,

Más detalles

Unidad Docente de Ingeniería del Software. Facultad de informática - Universidad Politécnica de Madrid

Unidad Docente de Ingeniería del Software. Facultad de informática - Universidad Politécnica de Madrid Unidad Docente de Ingeniería del Software Facultad de informática - Universidad Politécnica de Madrid Índice ACCIÓN / COMMAND...1 ADAPTADOR / ADAPTER...6 APODERADO / PROXY...7 CADENA DE RESPONSABILIDADES

Más detalles

ASIGNATURA: Ingeniería de software II DOCENTE: Licda.Carla Milagro López Vásquez RESPONSABLE: Rodolfo Alberto Palma Ramos CARRERA:

ASIGNATURA: Ingeniería de software II DOCENTE: Licda.Carla Milagro López Vásquez RESPONSABLE: Rodolfo Alberto Palma Ramos CARRERA: UNIDAD 04: PATRONES DE DISEÑO WEB. ASIGNATURA: Ingeniería de software II DOCENTE: Licda.Carla Milagro López Vásquez RESPONSABLE: Rodolfo Alberto Palma Ramos CARRERA: Técnico en Ingeniería en Sistemas y

Más detalles

2. Conceptos básicos Abstracción La abstracción como un proceso mental natural La abstracción en el desarrollo de software

2. Conceptos básicos Abstracción La abstracción como un proceso mental natural La abstracción en el desarrollo de software 2. Conceptos básicos Hoy en día las aplicaciones son demasiado voluminosas y complejas para ser manejadas por una sola persona. Las aplicaciones de software son complejas porque modelan la complejidad

Más detalles

Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2

Lenguajes de Programación Curso 04-05. Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces 1. 2. Clases abstractas 2 Objetivos Herencia. Utilización de interfaces y clases abstractas. Índice 1. Interfaces 1 2. Clases abstractas 2 3. Collections Framework 3 3.1. Collection........................................... 3

Más detalles

Notación UML para modelado Orientado a Objetos

Notación UML para modelado Orientado a Objetos 1 Notación UML para modelado Orientado a Objetos 2 Notación UML para modelado Orientado a Objetos Índice 1.1. Qué es UML?.. 3 1.2. Por qué interesa UML en la asignatura de Programación Orientada a Objetos?3

Más detalles

Planificaciones. 7510 - Técnicas de Diseño. Docente responsable: PANTALEO GUILLERMO GUSTAVO. 1 de 5

Planificaciones. 7510 - Técnicas de Diseño. Docente responsable: PANTALEO GUILLERMO GUSTAVO. 1 de 5 Planificaciones 7510 - Técnicas de Diseño Docente responsable: PANTALEO GUILLERMO GUSTAVO 1 de 5 OBJETIVOS En este curso se busca introducir a los alumnos en el concepto de diseño de software. Para lograrlo

Más detalles

Patrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez)

Patrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Patrones de Diseño Patrón estructural Composite Técnicas de Programación - Curso 2008/09 (Esther Guerra Sánchez) Propósito Componer objetos en estructuras arbóreas para representar jerarquías todo-parte.

Más detalles

PATRONES. Experto. Solución:

PATRONES. Experto. Solución: PATRONES. Experto. Asignar una responsabilidad a la clase que tiene la información necesaria para cumplirla. Cuál es el principio fundamental en virtud del cual asignaremos las responsabilidades a los

Más detalles

POO en Java IV: Herencia (Parte 1)

POO en Java IV: Herencia (Parte 1) Herencia POO en Java IV: Herencia (Parte 1) Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile fguidi@ucv.cl Es la derivación de una clase a partir de otra existente.

Más detalles

Diseño Basado en Componentes. Curso 2008/09

Diseño Basado en Componentes. Curso 2008/09 Tabla de contenidos Diseño Basado en Componentes Técnicas relacionadas con Reutilización Introducción: por qué reutilizar?, qué reutilizar? Técnicas: Ingeniería de dominios Líneas de productos (Product-lines)

Más detalles

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA APLICACIÓN DE PATRONES DE DISEÑO DE SOFTWARE EN EL DISEÑO DE UNA APLICACIÓN DE BASE DE DATOS ORIENTADA A OBJETOS. TRABAJO DE GRADUACIÓN PRESENTADO

Más detalles

Introducción a la Programación Orientada a Objetos

Introducción a la Programación Orientada a Objetos Introducción a la Programación Orientada a Objetos El paradigma imperativo. En un programa se tienen una serie de variables con las cuales operamos y modificamos mediante sentencias y funciones para producir

Más detalles

Repetir el proceso para cada abstracción identificada hasta que el diseño este expresado en términos sencillos

Repetir el proceso para cada abstracción identificada hasta que el diseño este expresado en términos sencillos I. INTRODUCCIÓN El reciente aumento de aplicaciones en donde se utiliza la computadora ha sido posible debido a un hardware de bajo costo, por lo cual la demanda de software ha crecido de forma exponencial.

Más detalles

Ingeniería del software I Patrones de Diseño

Ingeniería del software I Patrones de Diseño Qué es un Patrón de Diseño? Ingeniería del software I Patrones de Diseño Los patrones de diseño capturan soluciones a problemas particulares de diseño. abstraen estructuras de diseño recurrentes Incorporan

Más detalles

Diagrama de Clases. Diagrama de Clases

Diagrama de Clases. Diagrama de Clases Diagrama de Clases 1 Diagrama de Clases El propósito de este diagrama es el de representar los objetos fundamentales del sistema, es decir los que percibe el usuario y con los que espera tratar para completar

Más detalles

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL

Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL DNI Apellidos y nombre 1. Cuál de las siguientes afirmaciones no es una causa de los problemas del software?

Más detalles

DIAGRAMA DE CLASES EN UML

DIAGRAMA DE CLASES EN UML DIAGRAMA DE CLASES EN UML Mg. Juan José Flores Cueto jflores@usmp.edu.pe Ing. Carmen Bertolotti Zuñiga cbertolotti@usmp.edu.pe INTRODUCCIÓN UML (Unified Modeling Language) es un lenguaje que permite modelar,

Más detalles

Programación Orientada a Objetos con Java

Programación Orientada a Objetos con Java Programación Orientada a Objetos con Java M.C. Jorge Eduardo Ibarra Esquer jorgeeie@uabc.mx Sobrecarga de métodos Java permite la definición de dos o más métodos que tengan el mismo nombre, dentro de la

Más detalles

Clases abstractas e interfaces

Clases abstractas e interfaces Clases abstractas e interfaces Clases abstractas Una clase abstracta es una clase que no se puede instanciar se usa únicamente para definir subclases Cuándo es una clase abstracta? En cuanto uno de sus

Más detalles

Java: Clases Abstractas e Interfaces

Java: Clases Abstractas e Interfaces Clases abstractas e interfaces Java: Clases Abstractas e Interfaces Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile fguidi@ucv.cl A nivel conceptual,

Más detalles

Resolución Ejercicio Subastas On Line

Resolución Ejercicio Subastas On Line Resolución Ejercicio Subastas On Line 2 cuatrimestre 2008 Índice ENUNCIADO... 3 RESOLUCIÓN SUBASTAS ONLINE... 5 PRIMERA PARTE... 5 CASOS DE USO DEL SISTEMA... 5 OBJETOS CANDIDATOS... 5 DIAGRAMA DE CLASES

Más detalles

PHP y MySQL. Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases

PHP y MySQL. Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases PHP y MySQL Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases Herencia de Objetos La herencia permite crear muchas clases que son similares entre si, sin tener

Más detalles

LINEAMIENTOS TÉCNICOS CATEGORÍA DISEÑO ORIENTADO A OBJETOS SENASoft Santander 2015. Documento elaborado por: Juan de Jesús Lizcano Sánchez

LINEAMIENTOS TÉCNICOS CATEGORÍA DISEÑO ORIENTADO A OBJETOS SENASoft Santander 2015. Documento elaborado por: Juan de Jesús Lizcano Sánchez 1 LINEAMIENTOS TÉCNICOS CATEGORÍA DISEÑO ORIENTADO A OBJETOS SENASoft Santander 2015 Documento elaborado por: Juan de Jesús Lizcano Sánchez Instructor Centro de Servicios Empresariales y Turísticos CSET

Más detalles

CONCEPTOS FUNDAMENTALES DE LA ORIENTACION A OBJETOS

CONCEPTOS FUNDAMENTALES DE LA ORIENTACION A OBJETOS CAPITULO 3 CONCEPTOS FUNDAMENTALES DE LA ORIENTACION A OBJETOS 3.1. QUE ES LA PROGRAMACIÓN ORIENTADA A OBJETOS? La POO no es un lenguaje de programación. La POO es una nueva manera de "atacar" los problemas

Más detalles

Patrones y Antipatrones. Motivacio n

Patrones y Antipatrones. Motivacio n Patrones y Antipatrones Eva M Castro Motivacio n ñel diseno orientado a objetos es un arte mas que una ciencia. Habilidad, talento. Experiencia. Creatividad, imaginacio n. ñmuy poca experiencia en estos

Más detalles

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida } REUTILIZACIÓN DE CLASES:MODELO DE HERENCIA EN JAVA Java soporta herencia simple pero no múltiple. Lo hace mediante el mecanismo de extensión de clase. A partir de él, una subclase se extiende (hereda)

Más detalles

DISEÑO DE APLICACIONES ORIENTADAS A OBJETOS

DISEÑO DE APLICACIONES ORIENTADAS A OBJETOS ASIGNATURA DE GRADO: DISEÑO DE APLICACIONES ORIENTADAS A OBJETOS Curso 2015/2016 (Código:71022011) 1.PRESENTACIÓN DE LA ASIGNATURA El objetivo de esta guía es orientar al alumno en el estudio de la asignatura.

Más detalles

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD INGENIERÍA PROYECTO CURRICULAR MAESTRÍA EN CIENCIAS DE LA INFORMACIÓN Y LAS COMUNICACIONES

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD INGENIERÍA PROYECTO CURRICULAR MAESTRÍA EN CIENCIAS DE LA INFORMACIÓN Y LAS COMUNICACIONES UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD INGENIERÍA PROYECTO CURRICULAR MAESTRÍA EN CIENCIAS DE LA INFORMACIÓN Y LAS COMUNICACIONES SYLLABUS INGENIERÍA DE SOFTWARE NOMBRE DEL DOCENTE: HENRY

Más detalles

Arquitecturas Software. Arquitecturas Software. Arquitecturas Software. Juan José Moreno Navarro. Motivación: Idea principal: Características:

Arquitecturas Software. Arquitecturas Software. Arquitecturas Software. Juan José Moreno Navarro. Motivación: Idea principal: Características: Arquitecturas Software Juan José Moreno Navarro (Curso de Software basado en Componentes, junto a Lars-Ake Fredlund) Arquitecturas Software Motivación: Complejidad creciente de aplicaciones. Sistemas distribuidos

Más detalles

Diseño de Componentes. Dra. Marcela Capobianco

Diseño de Componentes. Dra. Marcela Capobianco Tecnicas avanzadas en Diseño de Software Diseño de Componentes Dra. Marcela Capobianco 1 Diseño orientado a objetos Es difícil crear SW reusable Indentificar los objetos Factorearlos en clases con la granularidad

Más detalles

GLOSARIO DE TÉRMINOS

GLOSARIO DE TÉRMINOS MINISTERIO DE EDUCACIÓN, CULTURA Y DEPORTE SECRETARÍA DE ESTADO DE EDUCACIÓN, FORMACIÓN PROFESIONAL Y UNIVERSIDADES DIRECCIÓN GENERAL DE FORMACIÓN PROFESIONAL INSTITUTO NACIONAL DE LAS CUALIFICACIONES

Más detalles

CAPITULO 13. DISEÑAR APLICACIONES

CAPITULO 13. DISEÑAR APLICACIONES CAPITULO 13. DISEÑAR APLICACIONES Los pasos iniciales en el desarrollo de un sistema de software se conocen, generalmente, como las etapas de análisis y diseño: analizamos el problema y luego diseñamos

Más detalles

Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura

Estilos de Arquitectura y. Patrones de Diseño Arquitectónico. Patrones de Arquitectura Estilos de Arquitectura y Patrones de Diseño Arquitectónico Gastón Mousqués - AR 1 Patrones de Arquitectura Gastón Mousqués - AR 2 Principales Categorías de Patrones (Software) Patrones de Análisis Expresan

Más detalles

UNIVERSIDAD NACIONAL DE INGENIERÍA CENTRO DE EXTENSIÓN Y PROYECCIÓN SOCIAL

UNIVERSIDAD NACIONAL DE INGENIERÍA CENTRO DE EXTENSIÓN Y PROYECCIÓN SOCIAL UNIVERSIDAD NACIONAL DE INGENIERÍA CURSO DE JAVA CERTIFICA ORGANIZA Mayor Información: informes@uni.edu.pe Telf. : 481-6693 /381-3854 Visite Nuestra Web http://www.ceps.uni.edu..pe OBJETIVOS GENERALES

Más detalles

Ingeniería Software para Sistemas Empotrados. Patrones de Diseño. Carlos Carreras

Ingeniería Software para Sistemas Empotrados. Patrones de Diseño. Carlos Carreras Ingeniería Software para Sistemas Empotrados Patrones de Diseño Carlos Carreras Departamento de Ingeniería Electrónica Universidad Politécnica de Madrid 1 Contenidos Definición de patrones y frameworks

Más detalles

Objetivo Las personas que realicen el curso aprenderán a:

Objetivo Las personas que realicen el curso aprenderán a: Objetivo Las personas que realicen el curso aprenderán a: Describir el proceso de desarrollo de software orientado a objetos, lo que incluye las metodologías y los flujos de trabajo de la programación

Más detalles

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA UNED Centro Asociado de Cádiz RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA 1. OBJETOS Cualquier elemento del programa es un objeto. Un programa es un conjunto de objetos que se comunican entre sí

Más detalles

Tema 2. Técnicas básicas de POO. Técnicas de Programación - Curso 2007/08

Tema 2. Técnicas básicas de POO. Técnicas de Programación - Curso 2007/08 Tema 2 Técnicas básicas de POO Técnicas de Programación - Curso 2007/08 Contenido Principios de POO Encapsulación Herencia Polimorfismo Ejemplos Técnicas básicas Delegación Uso de interfaces Interfaces

Más detalles

Programación Orientada a Objetos en Java

Programación Orientada a Objetos en Java Programación Orientada a Objetos en Java Curso 2006-2007 Tema 4 Herencia y Polimorfismo Gonzalo Méndez Pozo Dpto. de Ingeniería de Software e Inteligencia Artificial Universidad Complutense de Madrid Herencia

Más detalles

SOLUCION PARCIAL TASK SCHEDULER. Task Scheduler

SOLUCION PARCIAL TASK SCHEDULER. Task Scheduler Task Scheduler Se necesita modelar una aplicación que permita definir tareas y ejecutarlas en forma programada. Las tareas pueden ser: La ejecución de programa cualquiera o comando del sistema operativo,

Más detalles

Patrones en el e-learning

Patrones en el e-learning Patrones en el e-learning DOCUMENTO BASE El concepto de patrón en el e-learning permite resumir y comunicar la experiencia acumulada en la enseñanza-aprendizaje por medios telemáticos. Un patrón puede

Más detalles

SISTEMAS DE INFORMACIÓN II TEORÍA

SISTEMAS DE INFORMACIÓN II TEORÍA CONTENIDO: ARQUITECTURA DEL SISTEMA DE SOFTWARE NIVELES DE DISEÑO DE LOS SISTEMAS DE SOFTWARE CUALIDADES DE LAS ARQUITECTURAS ESTILOS Y PATRONES - ESTILOS ARQUITECTÓNICO - PATRÓN ARQUITECTÓNICO FRAMEWORK

Más detalles

POLIMORFISMO "una interfaz, múltiples métodos".

POLIMORFISMO una interfaz, múltiples métodos. "una interfaz, múltiples métodos". 20/02/2007 Polimorfismo 2 Indice Definición y caracteristicas Objetivos. SOBRRESCRITURA-SOBRECARGA SOBRECARGA Clases y métodos abstractos INTERFACES (herencia múltiple)

Más detalles

DISEÑO DE COMPONENTES DE SOFTWARE *

DISEÑO DE COMPONENTES DE SOFTWARE * DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.

Más detalles

Principios de Diseño Orientado a Objetos

Principios de Diseño Orientado a Objetos Principios de Diseño Orientado a Objetos PRINCIPIOS DE DISEÑO DE CLASES PRINCIPIO ABIERTO- CERRADO (OCP): Un módulo debe ser abierto para extensión pero cerrado para modificación. Wikipidia: La noción

Más detalles

2 de 6 www.grupoxita.com.mx

2 de 6 www.grupoxita.com.mx 2 de 6 www.grupoxita.com.mx Curso: Duración: Introducción: Destinatarios: Objetivos: Conocimientos previos: Equipo de cómputo y software: Precios: Facilidades de pago: Datos de cuentas. Reposición de clase:

Más detalles

6.170 Repaso de la prueba. Desacoplamiento. Desacoplamiento Clase 2: Usos, dependencias, especificaciones, MDDs (Diagrama de dependencia de módulos).

6.170 Repaso de la prueba. Desacoplamiento. Desacoplamiento Clase 2: Usos, dependencias, especificaciones, MDDs (Diagrama de dependencia de módulos). 6.170 Repaso de la prueba Clases: 1. Desacoplamiento. 2.. 3. Funciones de abstracción e invariantes de representación. 4. Abstracción de iteración e iteradores. 5. Modelos de objeto e invariantes. 6. Igualdad,

Más detalles

Una Arquitectura para una Herramienta de Patrones de Diseño

Una Arquitectura para una Herramienta de Patrones de Diseño Una Arquitectura para una Herramienta de Patrones de Diseño José Sáez Martínez 1, Jesús García Molina, Pedro J. Jiménez García Departamento de Informática, Lenguajes y Sistemas. Campus de Espinardo C.P.

Más detalles

Model View Controller Architecture. Dra. Marcela Capobianco

Model View Controller Architecture. Dra. Marcela Capobianco Diseño y Desarrollo de Software Model View Controller Architecture Dra. Marcela Capobianco 1 Qué es MVC? Model View Controller (MVC) es un patrón agregado que separa los datos de una aplicación, la interfaz

Más detalles

Introducción a la Programación Orientada a Objetos (POO) Introducción a la Programación Orientada a Objetos (POO)

Introducción a la Programación Orientada a Objetos (POO) Introducción a la Programación Orientada a Objetos (POO) Diseño Orientado a Objetos. Metodología enfocada a la solución de problemas complejos. Complejidad del software. Problemas difíciles de precisar. Definición de requerimientos vago y cambio en el desarrollo

Más detalles

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos Conceptos ELO329: Diseño y Programación Orientados a Objetos 1 Paradigmas de Programación Historia: Los computadores parten cableados por hardware, Luego se introduce la programación en binario, Se desarrolla

Más detalles

Fundamentos de Ingeniería del Software. Capítulo 11. Reutilización del software

Fundamentos de Ingeniería del Software. Capítulo 11. Reutilización del software Fundamentos de Ingeniería del Software Capítulo 11. Reutilización del software Reutilización del software. Estructura 1. Reutilización del software 2. Beneficios de la reutilización 3. Dificultades para

Más detalles

Introducción. Herencia y Polimorfismo. Ejemplos (I) Ejemplos (II) Control de Acceso. Herencia

Introducción. Herencia y Polimorfismo. Ejemplos (I) Ejemplos (II) Control de Acceso. Herencia Introducción Herencia y Polimorfismo Se pueden definir jerarquías de clases, con clases generales que definen el comportamiento común a unos objetos y clases específicas que sólo añaden o redefinen el

Más detalles

Circuito Administrativo

Circuito Administrativo Administración de Agencias de Apuestas Se quiere construir un sistema para ofrecer a agencias de apuestas. La estrategia de la empresa es tener un único sistema que utilicen simultáneamente muchas agencias,

Más detalles

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK.

Lo que necesitaremos para programar en Java, será un editor de texto o IDE y la JDK. Introducción Java surgió en 1991 dentro de la empresa Sun Microsystems como un lenguaje de programación sencillo y universal destinado a electrodomésticos. La reducida potencia de cálculo y memoria de

Más detalles

Carlos Fontela cfontela@fi.uba.ar

Carlos Fontela cfontela@fi.uba.ar Carlos Fontela cfontela@fi.uba.ar Vimos la estrategia de resolución de problemas usando objetos Pero no cómo implementar los propios objetos => Construcción de objetos 2 1c2016 Diseño por contrato y Test-First

Más detalles

1er. Ciclo de Seminarios en Ing. en Computación

1er. Ciclo de Seminarios en Ing. en Computación en Ing. en Computación Laboratorio De Redes de Computadoras Depto. de Electricidad, Electrónica y Computación Facultad de Cs. Exactas y Tecnologías UNIVERSIDAD NACIONAL DE TUCUMAN 1 Disertante Ing. Luis

Más detalles

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011

Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Programación Avanzada SOLUCIÓN EXAMEN FEBRERO 2011 Por favor siga las siguientes indicaciones: Escriba con lápiz y de forma prolija. Escriba las hojas de un solo lado Escriba su nombre y número de documento

Más detalles

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B)

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) APRENDERAPROGRAMAR.COM INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:

Más detalles

1. Qué tipos de relación hay entre las siguientes clases?

1. Qué tipos de relación hay entre las siguientes clases? Ejercicios Tema 8: Herencia 1. Qué tipos de relación hay entre las siguientes clases? Personal de la Universidad PAS Profesor 1 n Estudiante a) herencia y asociación b) herencia y dependencia c) dependencia

Más detalles

Patrones para persistencia (I) Ingeniería del Software II

Patrones para persistencia (I) Ingeniería del Software II Patrones para persistencia (I) Ingeniería del Software II 1 Patrones para la construcción del esquema relacional En todos los ejemplos realizaremos transformaciones del siguiente diagrama de clases: Figura

Más detalles