Command: Encapsulando Peticiones
Transforma una petición en un objeto autónomo — habilitando deshacer/rehacer, colas, registro y ejecución diferida de operaciones.
Por qué importa
Cuando llamas a un método directamente, la acción desaparece — no hay registro, no hay forma de revertirla, no hay forma de diferirla o ponerla en cola. El patrón Command convierte cada operación en un objeto con execute() y undo(). Una pila de historial de objetos Command te da Ctrl+Z gratis. El mismo enfoque habilita tareas programadas, colas de trabajos, registros de auditoría y rollbacks de transacciones.
Más allá del deshacer/rehacer
Los objetos Command pueden serializarse y almacenarse — habilitando ejecución diferida (ejecutar esto a medianoche), colas de tareas distribuidas (Celery, Bull), y event sourcing (todo el historial de cambios es una lista de comandos que se pueden reproducir). Cada commit de git es un Command. Cada migración de base de datos es un Command. El patrón es ubicuo una vez que lo ves.
💡Conclusión clave
Siempre que necesites deshacer/rehacer o historial de operaciones, Command convierte las acciones en objetos que se pueden almacenar, reproducir e invertir — la pila de historial hace el resto.
🔧 Algunos ejercicios pueden tener errores. Si algo parece incorrecto, usa el botón Feedback (abajo a la derecha) para reportarlo — nos ayuda a corregirlo rápido.
Pista: Siempre que necesites deshacer/rehacer o historial de operaciones, Command convierte las acciones en objetos que se pueden almacenar, reproducir e invertir.
✗ Tu versión