COMMAND PATRONES DE DISEÑO INTRODUCCIÓN • Es un patron de tipo Comportamental (Behavioral) • Su definición indica que encapsula una solicitud de comando como un objeto, lo que permite parametrizar clientes con diferentes solicitudes, solicitudes de cola (queue) o de registro (log) y admite operaciones que no se pueden deshacer (undoable operations) • Frecuencia de uso media alta PARTICIPANTES • • Command (ICommand) : declara una interfaz para ejecutar una operación ConcreteCommand (CalculatorCommand) : • • Define un enlace (binding) entre un objeto Receptor (Receiver) y una acción Implementa el Ejecutar (execute) invocando las operaciones correspondientes en el Receptor (Receiver) • Client (Program) : crea un objeto ConcreteCommand y establece su receptor (receiver) • • Invoker (User) : pide al comando que realice la solicitud Receiver (Calculator): sabe cómo realizar las operaciones asociadas con la realización de la solicitud. DIAGRAMA DE CLASES EJEMPLO • Una calculadora … con funcionalidad undo y redo (deshacer-rehacer) EJEMPLO • Asignador de Libros