Lequel de ces modèles est le meilleur? Quels sont les avantages et les inconvénients de chacun? Lequel utiliseriez-vous? Toute autre suggestion sur la façon de traiter des méthodes comme celle-ci est appréciée.
Il est raisonnable de supposer que Draw () est le seul endroit à partir duquel les autres méthodes de dessin sont appelées. Cela doit s'étendre à de nombreuses autres méthodes Draw * et propriétés Show *, et pas seulement aux trois indiquées ici.
public void Draw()
{
if (ShowAxis)
{
DrawAxis();
}
if (ShowLegend)
{
DrawLegend();
}
if (ShowPoints && Points.Count > 0)
{
DrawPoints();
}
}
private void DrawAxis()
{
// Draw things.
}
private void DrawLegend()
{
// Draw things.
}
private void DrawPoints()
{
// Draw things.
}
Ou
public void Draw()
{
DrawAxis();
DrawLegend();
DrawPoints();
}
private void DrawAxis()
{
if (!ShowAxis)
{
return;
}
// Draw things.
}
private void DrawLegend()
{
if (!ShowLegend)
{
return;
}
// Draw things.
}
private void DrawPoints()
{
if (!ShowPoints || Points.Count <= 0))
{
return;
}
// Draw things.
}