Design patterns
Command & Interpreter
$
Patrón de comportamiento en el cual un objeto es usado para representar y encapsular toda la información requerida para invocar un método en un tiempo posterior.
Command pattern
¿ Que información ?
El nombre del método, el objeto que posee el método y valores para los parametros del método.
Command pattern
Command pattern
- Permite almacenar listas de código para sean ejecutadas luego o muchas veces.
- El cliente quiere un comando especifico o una lista de código a ejecutar cuando execute() es llamado en un objeto encapsulado.
- El objeto "Invoker" transfiere este comando a otro objeto llamado "Reciver" para ejecutar el código pertinente.
¿ Que busca este patrón ?
- Promote "invocation of a method on an object" to full object status.
- An object-oriented callback
Command pattern
¿ Cuando se debe usar?
- Se necesiten colas o registros de mensajes.
- Se deba tener la posibilidad de deshacer las operaciones realizadas.
- Se quiera independizar el momento de petición del de ejecución.
- El parámetro de una orden puede ser otra orden a ejecutar.
Command pattern
Command pattern
Command pattern
Interpreter pattern
- Este patrón es normalmente ignorado
- Es muy poco usado
- Se utiliza para convertir una representación de datos en otra
- Specialized database query languages such as SQL.
Interpreter pattern
- El contexto contiene la información que sera interpretada
- La expresión es una clase abstracta que define todos los métodos requeridos para hacer diferentes conversiones
- La terminal o las expresiones concretas proveen conversiones especificas en diferentes tipos de dato.
Interpreter pattern
Software design patterns: Command & Interpreter
By Julio César
Software design patterns: Command & Interpreter
- 1,046