INotificacao.cs
public interface INotificacao
{
void EnviarMensagem(string mensagem);
}
EmailNotificacao.cs
public class EmailNotificacao : INotificacao
{
public void EnviarMensagem(string mensagem)
{
Console.WriteLine("Enviando E-MAIL: " + mensagem);
}
}
SmsNotificaco.cs
public class SmsNotificaco : INotificacao
{
public void EnviarMensagem(string mensagem)
{
Console.WriteLine("Enviando SMS: " + mensagem);
}
}
PushNotificaco.cs
public class PushNotificaco : INotificacao
{
public void EnviarMensagem(string mensagem)
{
Console.WriteLine("Enviando Push: " + mensagem);
}
}
Program.cs
List<INotificacao> notificacoes = new List<INotificacao>
{
new EmailNotificacao(),
new SmsNotificaco(),
new PushNotificaco()
};
foreach (var notificacao in notificacoes)
{
notificacao.EnviarMensagem("Sistema fora do ar!");
}