Sto scrivendo un'applicazione e sono arrivato a questo punto:
private void SomeMethod()
{
if (Settings.GiveApples)
{
GiveApples();
}
if (Settings.GiveBananas)
{
GiveBananas();
}
}
private void GiveApples()
{
...
}
private void GiveBananas()
{
...
}
Questo sembra abbastanza semplice. Ci sono alcune condizioni e se sono vere vengono chiamati i metodi. Tuttavia, stavo pensando, è piuttosto meglio fare così:
private void SomeMethod()
{
GiveApples();
GiveBananas();
}
private void GiveApples()
{
if (!Settings.GiveApples)
{
return;
}
...
}
private void GiveBananas()
{
if (!Settings.GiveBananas)
{
return;
}
...
}
Nel secondo caso, ognuno dei metodi si difende da solo, quindi anche se qualcuno di questi metodi GiveApples
o GiveBananas
è chiamato dall'esterno SomeMethod
, verranno eseguiti solo se hanno il flag corretto in Impostazioni.
Questo è qualcosa che dovrei considerare come un problema?
Nel mio contesto attuale, è molto improbabile che questi due metodi vengano chiamati al di fuori di questo metodo, ma nessuno potrà mai garantirlo.