Junior — Middle
¿Puede dar un ejemplo de cuándo se realizó una reversión o cancelación de una acción anterior en un programa o sistema?
sobes.tech AI
Respuesta de la IA
Un ejemplo de deshacer en un programa en C# es el uso del patrón "Comando" con soporte para deshacer (undo). Por ejemplo, en un editor de texto:
public interface ICommand
{
void Execute();
void Undo();
}
public class InsertTextCommand : ICommand
{
private StringBuilder _text;
private string _insertedText;
private int _position;
public InsertTextCommand(StringBuilder text, string insertedText, int position)
{
_text = text;
_insertedText = insertedText;
_position = position;
}
public void Execute()
{
_text.Insert(_position, _insertedText);
}
public void Undo()
{
_text.Remove(_position, _insertedText.Length);
}
}
Aquí, el método Undo deshace la acción de insertar texto, restaurando el estado previo a la ejecución del comando. Este enfoque se usa a menudo para implementar la deshacer en aplicaciones y sistemas.