Events - convenção de nomes e estilo
Estou aprendendo sobre Eventos / Delegados em C #. Posso pedir sua opinião sobre o estilo de nomeação / codificação que escolhi (retirado do livro C # do Head First)?
Estou ensinando um amigo sobre isso amanhã e estou tentando encontrar a maneira mais elegante de explicar os conceitos. (A melhor maneira de entender um assunto é tentar ensiná-lo!)
class Program
{
static void Main()
{
// setup the metronome and make sure the EventHandler delegate is ready
Metronome metronome = new Metronome();
// wires up the metronome_Tick method to the EventHandler delegate
Listener listener = new Listener(metronome);
metronome.OnTick();
}
}
public class Metronome
{
// a delegate
// so every time Tick is called, the runtime calls another method
// in this case Listener.metronome_Tick
public event EventHandler Tick;
public void OnTick()
{
while (true)
{
Thread.Sleep(2000);
// because using EventHandler delegate, need to include the sending object and eventargs
// although we are not using them
Tick(this, EventArgs.Empty);
}
}
}
public class Listener
{
public Listener(Metronome metronome)
{
metronome.Tick += new EventHandler(metronome_Tick);
}
private void metronome_Tick(object sender, EventArgs e)
{
Console.WriteLine("Heard it");
}
}
n.b. O código é refatorado dehttp: //www.codeproject.com/KB/cs/simplesteventexample.asp