Subido por santiagocarvajalfernandez876

PATRONES DE DISEÑO

Anuncio
https://refactoring.guru/es/design-patterns/command
PATRONES DE COMPORTAMIENTO
El patrón de comportamiento se ocupa de la comunicación entre objetos de clase. Se utilizan para detectar la presencia
de patrones de comunicación ya presentes y pueden manipular estos patrones.
Estos patrones de diseño están específicamente relacionados con la comunicación entre objetos.
01. CHAIN OF RESPONSIBILITY
El patrón de diseño Chain of Responsibility es un patrón de comportamiento que evita acoplar el emisor de una petición
a su receptor dando a más de un objeto la posibilidad de responder a una petición.
1. COMMAND
Convierte una solicitud en un objeto independiente que contiene toda la información sobre la solicitud. Esta
transformación permite parametrizar métodos con diferentes solicitudes, retrasar o poner en cola la ejecución de una
solicitud y respaldar operaciones que no se pueden deshacer.
# PSEUDOCÓDIGO
En este ejemplo, el patrón Command ayuda a rastrear el historial de operaciones ejecutadas y hace
posible revertir una operación si es necesario.
2. INTERPRETER
Se utiliza para evaluar el lenguaje o la expresión al crear una interfaz que indique el contexto para la interpretación.
3. ITERATOR
Su utilidad es proporcionar acceso secuencial a un número de elementos presentes dentro de un objeto de colección sin
realizar ningún intercambio de información relevante.
,sss
Lslslsls
4. MEDIATOR
Este patrón proporciona una comunicación fácil a través de su clase que permite la comunicación para varias clases.
5. MEMENTO
El patrón Memento permite recorrer elementos de una colección sin exponer su representación subyacente.
6. OBSERVER
Permite definir un mecanismo de suscripción para notificar a varios objetos sobre cualquier evento que le suceda al
objeto que está siendo observado.
STATE
En el patrón state, el comportamiento de una clase varía con su estado y, por lo tanto, está representado por el objeto
de contexto.
Ssss
8. STRATEGY
Permite definir una familia de algoritmos, poner cada uno de ellos en una clase separada y hacer que sus objetos sean
intercambiables.
Kkk
9. TEMPLATE METHOD
Se usa con componentes que tienen similitud donde se puede implementar una plantilla del código para probar ambos
componentes. El código se puede cambiar con pequeñas modificaciones.
10. VISITOR
El propósito de un patrón Visitor es definir una nueva operación sin introducir las modificaciones a una estructura de
objeto existente.











Los patrones de comportamiento son:
Command: Son objetos que encapsulan una acción y los parámetros que
necesitan para ejecutarse.
Chain of responsibility: se evita acoplar al emisor y receptor de una
petición dando la posibilidad a varios receptores de consumirlo. Cada
receptor tiene la opción de consumir esa petición o pasárselo al siguiente
dentro de la cadena.
Interpreter: Define una representación para una gramática así como el
mecanismo para evaluarla. El árbol de sintaxis del lenguaje se suele
modelar mediante el patrón Composite.
Iterator: Se utiliza para poder movernos por los elementos de
un conjunto de forma secuencial sin necesidad de exponer su
implementación específica.
Mediator: Objeto que encapsula cómo otro conjunto de objetos interactúan
y se comunican entre sí.
Memento: Este patrón otorga la capacidad de restaurar un objeto a un
estado anterior
Observer: Los objetos son capaces de suscribirse a una serie de eventos
que otro objetivo va a emitir, y serán avisados cuando esto ocurra.
State: Permite modificar la forma en que un objeto se comporta en tiempo
de ejecución, basándose en su estado interno.
Strategy: Permite la selección del algoritmo que ejecuta cierta acción en
tiempo de ejecución.
Template Method: Especifica el esqueleto de un algoritmo, permitiendo a
las subclases definir cómo implementan el comportamiento real.
Visitor: Permite separar el algoritmo de la estructura de datos que se
utilizará para ejecutarlo. De esta forma se pueden añadir nuevas
operaciones a estas estructuras sin necesidad de modificarlas.
Descargar