¿Cuál es la diferencia entre los dos métodos UpdateSubject a continuación? Sentí que usar métodos estáticos es mejor si solo quieres operar en las entidades. ¿En qué situaciones debo ir con métodos no estáticos?
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;
}
}
Sé que recibiré muchas patadas de parte de la comunidad por esta pregunta realmente molesta, pero no pude evitar preguntarme.
¿Esto se vuelve impráctico cuando se trata de herencia?
Actualización:
Está sucediendo en nuestro lugar de trabajo ahora.
Estamos trabajando en una aplicación web asp.net de 6 meses con 5 desarrolladores. Nuestro arquitecto decidió que usamos todos los métodos estáticos para todas las API. Su razonamiento es que los métodos estáticos son ligeros y benefician a las aplicaciones web al mantener la carga del servidor baja.