Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

CONOCIENDO LOS PATRONES GoF, Ejercicios de Fundamentos de Diseño

CONOCIENDO LOS PATRONES GoF CONOCIENDO LOS PATRONES GoF

Tipo: Ejercicios

2021/2022

Subido el 13/10/2022

katherine-perez-40
katherine-perez-40 🇨🇴

6 documentos

1 / 13

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
ACTIVIDAD 1
CONOCIENDO LOS PATRONES GoF
KATHERINE PEREZ ORTIZ
INGENIERIA DE SOFWARE
UNIVERSIDAD IBERO AMERICANA
FUNDAMENTOS DE DISEÑO DE SOFTWARE
SANTIAGO DE CALI
2021
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd

Vista previa parcial del texto

¡Descarga CONOCIENDO LOS PATRONES GoF y más Ejercicios en PDF de Fundamentos de Diseño solo en Docsity!

ACTIVIDAD 1

CONOCIENDO LOS PATRONES GoF KATHERINE PEREZ ORTIZ INGENIERIA DE SOFWARE UNIVERSIDAD IBERO AMERICANA FUNDAMENTOS DE DISEÑO DE SOFTWARE SANTIAGO DE CALI 2021

ACTIVIDAD 1

CONOCIENDO LOS PATRONES GoF KATHERINE PEREZ ORTIZ TALLER INICIAL PRESENTADO A: MARY RUBIANO UNIVERSIDAD IBERO AMERICANA FUNDAMENTOS DE DISEÑO DE SOFTWARE SANTIAGO DE CALI 2021

1.1- ¿Qué es un patrón? Cada patrón describe un problema que ocurre infinidad de veces en nuestro entorno, así como la solución al mismo, de tal modo que podemos utilizar esta solución un millón de veces más adelante sin tener que volver a pensarla otra vez 1.2-¿Qué es un patrón de diseño software? Soluciones probadas Buenas prácticas Diseño de software en un patrón de diseño de software describe un problema recurrente que surge en contextos específicos de software, y presenta un esquema genérico probado para la solución de éste. Entre los catálogos de patrones de diseño, el más reconocido es el catálogo de patrones GOF (Gang of Four), el cual fue publicado en el libro Design Patterns en 1995 y es el principal referente en el tema de patrones. Integrantes

  • Ralph Johnson
  • Erich Gamma
  • Richard Helm
  • John Vlissides Soluciones probadas (^) Buenas practicas Diseño del software

Tabla 1 Cuadro con división por categorías Propósito Creación Estructural Comportamiento Herencia Factory method Adapter Imterpreter templete method Ámbito/ composición Abstract Factory Builder Prototype Singleton Adapter Bridge Composite Decorator Facade Flyweight Proxy Chain of Responsibility Command Iterator Mediator Memento Observer State Strategy Visitor Nota Tabla 2 Cuadro comparativo por patrones Patrones de creación Patrones de diseño creacional Fabrica abstracta Patrón de construcción Método de fabrica Patrón de prototipo Patrón siglenton Los patrones de diseño de creación se clasifican además en patrones de creación de objetos y patrones de creación de clases, donde los El patrón "Abstract Factory" proporciona una clase abstracta que determina la clase concreta apropiada para instanciar para crear un conjunto de El patrón Builder separa la construcción de un objeto complejo de su representación para que el mismo proceso de construcción pueda crear diferentes objetos. El patrón Builder Se usa una clase concreta con métodos estáticos para crear instancias de objetos que implementan una interfaz. El patrón Factory Method El patrón Prototype permite que un objeto cree objetos personalizado sin conocer su clase exacta o los detalles de cómo crearlos. Especifica los tipos de objetos a crear usando El patrón Singleton asegura que una clase tenga solo una instancia y proporciona un punto global de acceso a esa clase. Asegur a que todos

patrones construyen el objeto en un solo paso. solo la interfaz para que pueda ser utilizada por el cliente. Crea una nueva clase de fábrica para crear la nueva clase y la clase de fábrica implementa la interfaz de fábrica.

Tabla 3 Cuadro comparativo por patrones Patrones estructurales Patrón de adaptado r Patrón de puente Patrón compuesto Patrón decorador Patrón fachada Patrón de peso Patrón proxi El patrón Adaptado r actúa como intermedi ario entre dos clases, convirtie ndo la interfaz de una clase para que pueda usarse con la otra. Esto permite que las clases con interface s incompa tibles trabajen juntas. El puente usa encapsulaci ón, agregación y puede usar herencia para separar responsabil idades en diferentes clases. Cuando una clase varía con frecuencia, las característi cas de la programaci ón orientada a objetos se vuelven muy útiles porque los cambios en el código de un programa se pueden hacer fácilmente con un El patrón compuesto le permite crear estructura s de árbol jerárquicas de diversa complejidad, al tiempo que permite que todos los elementos de la estructura operen con una interfaz uniforme. El patrón compuesto combina objetos en estructuras de árbol para representar la jerarquía completa o una parte de la jerarquía. Esto significa que el patrón compuesto permite a los clientes tratar objetos individuales y composiciones El patrón Decorador le permite agregar o eliminar la funcionalidad del objeto sin cambiar la apariencia externa o la función del objeto. Cambia la funcionalidad de un objeto de una manera que es transparente para sus clientes mediante el uso de una instancia de una subclase de la clase original que delega operaciones al objeto original. El patrón Facade pr oporciona una interfaz unificada a un grupo de interfaces en un subsistem a. El patrón Facade define una interfaz de nivel superior que hace que el subsistem a sea más fácil de usar porque solo tiene una interfaz. E sta interfaz unificada permite que un objeto acceda al subsistem El patrón Flyweight reduce la cantidad de objetos detallados de bajo nivel dentro de un sistema al compartir objetos. Si las instancias de una clase que contienen la misma informació n se pueden usar indistinta mente, el patrón Flyweight permite que un programa evite el gasto de varias instancias que contienen El patrón Proxy proporciona un objeto sustituto o marcador de posición para controlar el acceso al objeto original. Hay varios tipos de implementac iones del patrón Proxy con el.

ntar esa interacció n.

Tabla 4 Cuadro comparativo por patrones Patrones de diseño de comportamiento Código de comando Patrón de interprete Patrón iterador Patrón mediador Patrón recuerdo Patrón estado Patrón visitante Patrón estrategia El patrón Cadena de responsa bilidad establece una cadena dentro de un sistema, de modo que un mensaje puede manejars e en el nivel donde se recibió por primera vez o dirigirse a un objeto que pueda manejarl o. El patrón Command encapsula una solicitud en un objeto, lo que le permite almacenar el comando, pasar el comando a un método y devolver el comando como cualquier otro objeto. La siguiente figura ilustra el patrón de comando. El patrón de intérpre te interpre ta un idioma para definir una represe ntación de su gramáti ca junto con un intérpre te que usa la represe ntación para interpre tar oracion es en el idioma. El siguient e diagram a ilustra el patrón de El patrón de iterador proporciona una forma coherente de acceder secuencialm ente a los elementos de una colección que es independien te y está separada de la colección subyacente. La siguiente figura representa el patrón de iterador. El patrón Mediator simp lifica la comunicación entre los objetos de un sistema al introducir un único objeto que gestiona la distribución de mensajes entr e otros objetos. El patrón Mediator promueve un acoplamiento flexible al evitar que los objetos se refieran entre sí de forma explícita y le permite variar su interacción de forma independiente . El patrón de estado permite que un objeto altere su comportami ento cuando cambia su estado interno. El objeto parece cambiar de clase. La figura ilustra el patrón de estado. El patrón de visitante le permite definir una nueva operación sin cambiar las clases de los elementos sobre los que opera. La siguiente figura ilustra el patrón de visitante. El patrón de visitante proporciona una forma fácil y mantenible de representar una operación que se realizará en los elementos de una estructura de objeto. La intención del Patrón de estrategia es definir una familia de algoritmos , encapsular cada algoritmo y hacerlos intercambi ables. El patrón de estrategia permite que el algoritmo varíe independi entemente de los clientes que lo utilicen. A demás el patrón, define un grupo de clases que representa n un conjunto

Bibliografías: https://es.slideshare.net/jahlon/introduccin-a-los-patrones-de-diseo-