Back to questions
Junior — Middle
72
Можете привести пример, когда было выполнено откат или отмена предыдущего действия в программе или системе?
Answer from AI
sobes.tech AI
Пример отката действия в программе на C# — использование паттерна "Команда" с поддержкой отмены (undo). Например, в текстовом редакторе:
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);
}
}
Здесь метод Undo отменяет действие вставки текста, восстанавливая состояние до выполнения команды. Такой подход часто используется для реализации отмены операций в приложениях и системах.