Junior — Middle
Бағдарламада немесе жүйеде алдыңғы әрекетті қайтару немесе болдырмау жағдайын мысалмен көрсете аласыз ба?
sobes.tech AI
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 әдісі мәтін енгізу әрекетін жояды, команда орындалғанға дейінгі күйін қалпына келтіреді. Мұндай тәсіл қосымшалар мен жүйелерде операцияларды қайтаруды жүзеге асыру үшін жиі пайдаланылады.