Ho una piccola domanda. Quale approccio è corretto nel contesto dei principi SOLID? 1 o 2?
Nel primo caso, il metodo "CreateTask" non restituisce l'oggetto Task, ma lo inserisce nell'elenco che accetta come argomento del metodo.
Nel secondo caso, il metodo "CreateTask" non accetta argomenti, ma restituisce un oggetto task che deve essere inserito nell'elenco di attività
1.
var tasks = new List<Task>();
CreateTask1(tasks);
CreateTask2(tasks);
CreateTask3(tasks);
private void CreateTask1(List<Task> tasks)
{
// some other logic about new task object
tasks.Add(new Task());
}
private void CreateTask2(List<Task> tasks)
{
// some other logic about new task object
tasks.Add(new Task());
}
private void CreateTask3(List<Task> tasks)
{
// some other logic about new task object
tasks.Add(new Task());
}
2.
var tasks = new List<Task>();
tasks.Add(CreateTask1());
tasks.Add(CreateTask2());
tasks.Add(CreateTask3());
private Task CreateTask1()
{
// some other logic about new task object
return new Task();
}
private Task CreateTask2()
{
// some other logic about new task object
return new Task();
}
private Task CreateTask3()
{
// some other logic about new task object
return new Task();
}