Sobes.tech
Junior — Middle

Pode dar um exemplo de quando e como é feito o retorno ao estado anterior do sistema ou componente?

sobes.tech IA

Resposta da IA

O retorno a um estado anterior do sistema ou componente é frequentemente implementado usando o padrão "Memento" ou através de mecanismos de rollback em transações.

Exemplo em C# — implementação de desfazer alterações num objeto através da preservação de uma cópia do estado:

class Originator {
    public string State { get; set; }

    public Memento Save() {
        return new Memento(State);
    }

    public void Restore(Memento memento) {
        State = memento.State;
    }
}

class Memento {
    public string State { get; }
    public Memento(string state) {
        State = state;
    }
}

// Uso:
var originator = new Originator();
originator.State = "Estado 1";
var saved = originator.Save();

originator.State = "Estado 2";

// Reverter ao estado anterior
originator.Restore(saved);
Console.WriteLine(originator.State); // Vai mostrar "Estado 1"

Este método é útil quando é necessário cancelar alterações ou implementar a funcionalidade de "desfazer" (undo).