Apa perbedaan antara kedua metode UpdateSubject di bawah ini? Saya merasa menggunakan metode statis lebih baik jika Anda hanya ingin beroperasi pada entitas. Dalam situasi apa saya harus menggunakan metode non-statis?
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;
}
}
Saya tahu saya akan mendapatkan banyak tendangan dari komunitas untuk pertanyaan yang sangat menjengkelkan ini, tetapi saya tidak bisa berhenti bertanya.
Apakah ini menjadi tidak praktis ketika berhadapan dengan warisan?
Pembaruan:
Ini terjadi di tempat kerja kami sekarang. Kami sedang mengerjakan aplikasi web asp.net 6 bulan dengan 5 pengembang. Arsitek kami memutuskan untuk menggunakan semua metode statis untuk semua API. Alasannya menjadi metode statis adalah ringan dan menguntungkan aplikasi web dengan menjaga server turun.