TarefaAgendada.cs
public abstract class TarefaAgendada
{
public abstract void Executar();
}
BackupTarefa.cs
public class BackupTarefa : TarefaAgendada
{
public override void Executar()
{
Console.WriteLine("Executando tarefa de backup...");
}
}
RelatorioTarefa.cs
public class RelatorioTarefa : TarefaAgendada
{
public override void Executar()
{
Console.WriteLine("Executando tarefa de geração de relatório...");
}
}
LimpezaTarefa.cs
public class LimpezaTarefa : TarefaAgendada
{
public override void Executar()
{
Console.WriteLine("Executando limpeza...");
}
}
Program.cs
List<TarefaAgendada> tarefas = new List<TarefaAgendada>
{
new BackupTarefa(),
new RelatorioTarefa(),
new LimpezaTarefa()
};
foreach (var tarefa in tarefas)
{
tarefa.Executar();
}