Está en la página 1de 8

Introducción a los patrones de diseño

Nombre: Jairo vergara

Nombre Asignatura: PROGRAMACION A OBJETOS ll

Instituto IACC

10-06-22
Desarrollo

DESARROLLO DEL CONTROL: Lea atentamente El siguiente Caso: En la

concesionaria de compra y venta de vehículos “Rápido y veloz” están implementando

un sistema de procesamiento de información que automatiza todos los pasos con

respecto a la compra y venta de autos, este sistema maneja cartera de clientes,

vendedores, información de los autos y su relación entre cada de sus componentes,

quien vende cada auto, las características de los autos, quien los compra, entre otra

información.

De acuerdo al caso anterior:

1. Describa los patrones de diseño que aplicaría según sus características y

requerimientos (3 puntos).

Los patrones de diseño se clasifican en tres tipos diferentes dependiendo del tipo de

problema que resuelven. Estos pueden ser:

1. Patrones creacionales

Los patrones de creación proporcionan ayuda a la hora de crear objetos,

principalmente cuando esta creación requiere tomar decisiones. La toma de decisiones

utilizando patrones puede ser dinámica. Estos patrones ayudan a estructurar y

encapsular estas decisiones. En algunas ocasiones existe más de un patrón que se

puede aplicar a la misma situación. En otras ocasiones se pueden combinar múltiples

patrones convenientemente. Algunos de los patrones de creación más utilizados son

los siguientes:
Patrón de Fábrica Abstracta, Patrón Constructor, Patrón del Método de Fabricación,

Patrón Prototipo, Patrón de Instancia Única (Singleton).

Ejemplo de Patrón de Fábrica (Factory Pattern):

2. Patrones estructurales

Su nombre es muy descriptivo, se ocupa de resolver problemas sobre la estructura de

las clases, es decir, se enfocan en cómo las clases y objetos se componen para formar

estructuras mayores.

Aquí encuentras:
Bridge (Puente):

Separa la abstracción de la implementación.

Decorator (Decorador):

Agrega funcionalidades a una clase de forma dinámica.

Facade (Fachada):

Nos provee una interfaz unificada y simple para acceder a un sistema más complejo.

Adapter:

Cuando dos clases no se entiende, el adapter es mediador y adapta una clase para

que la otra la entienda.

Composite:

Ayuda a construir objetos complejos a partir de otros más simples.

Flyweight:

Se refiere a los objetos que queremos reutilizar para crear objetos más ligeros.

Proxy:

Es un elemento que se encarga de introducir un nivel de acceso a una clase. Ese nivel

de acceso puede ser por seguridad o por complejidad.


3. Patrones de comportamiento

Nos ayuda a resolver problemas relacionados con el comportamiento de la aplicación.

Ofrece soluciones respecto a la interacción y responsabilidad entre objetos y clases.

Por ejemplo:

Observer (Observador):

Un objeto le pasa el estado interno a muchos objetos que están interesados.

Chain of Responsibility:

Simplifica las interconexiones de objetos.

Command:

Separa acciones que pueden ser ejecutadas desde varios puntos diferentes de la

aplicación a través de una interfaz sencilla.

Iterator:

Este se utiliza en relación a objetos que almacenan colecciones de otros objetos.

Mediator:

Define un objeto que media entre otros objetos.

Memento:

Se utiliza para restaurar el estado de un objeto a un estado anterior.


State:

Permite a un objeto alterar su comportamiento cuando su estado interno cambia.

Strategy:

Permite que un objeto tenga parte o todo su comportamiento definido en términos de

otro objeto que sigue una interfaz particular.

Template Method:

Se centra en la reutilización del código para implementar pasos para resolver

problemas.

Visitor:

Se utiliza para separar la lógica y las operaciones realizadas sobre una estructura

compleja.

2. Determine ¿qué elementos y cualidades de patrones de diseño pueden ser

aplicados? (3 puntos).

Para nuestro caso de estudio podemos aplicar los elementos de:

1. Nombre e intención del patrón

• Referencia al patrón

• Incrementa el vocabulario de diseño

2. Problema y contexto
• Cuándo aplicar el patrón?

3. Solución

• Estructura: elementos que conforman el diseño, sus relaciones,

responsabilidades y colaboraciones

es una descripción abstracta de cómo una disposición de elementos

(clases y objetos) solucionan el problema

• Se ilustra con un ejemplo de código

4. Consecuencias (positivas y negativas)

• Necesidades (tiempo, memoria), aspectos de implementación y lenguaje de

programación, flexibilidad, extensibilidad, portabilidad

5. Patrones relacionados.

Y como cualidad el de Encapsulación y abstracción.

3. ¿Qué patrón de diseño según su clasificación y sus características aplicaría en

este caso? (3 puntos).

Para este caso se aplicará el Patrón de partición, ya que como lo dice su definición en

la etapa de análisis, se examina el problema para identificar los actores, casos de uso,

requerimientos y las relaciones que constituyen el problema. Los patrones de esta

categoría proveen la guía sobre cómo dividir actores complejos y casos de uso en

múltiples clases.

BIBLIOGRAFIA
https://platzi.com/blog/patrones-de-diseno/?

gclid=CjwKCAjwlcaRBhBYEiwAK341jbonjgmkwCr33arekwMrdGAi49LxwtUht_Du38QO

6LiNkYsoTWzypBoC6rQQAvD_BwE&gclsrc=aw.ds

También podría gustarte