Qual è la differenza tra i due metodi UpdateSubject di seguito? Sentivo che usare metodi statici è meglio se vuoi solo operare sulle entità. In quali situazioni dovrei scegliere metodi non statici?
public class Subject
{
public int Id {get; set;}
public string Name { get; set; }
public static bool UpdateSubject(Subject subject)
{
//Do something and return result
return true;
}
public bool UpdateSubject()
{
//Do something on 'this' and return result
return true;
}
}
So che riceverò molti calci dalla comunità per questa domanda davvero fastidiosa, ma non potevo smettere di farmi questa domanda.
Questo diventa poco pratico quando si ha a che fare con l'eredità?
Aggiornamento:
sta succedendo nel nostro posto di lavoro ora. Stiamo lavorando su un'applicazione web asp.net di 6 mesi con 5 sviluppatori. Il nostro architetto ha deciso di utilizzare tutti i metodi statici per tutte le API. Il suo ragionamento è che i metodi statici sono leggeri e avvantaggia le applicazioni web mantenendo basso il carico del server.