سلام و احترام
استاد آوند در تدریس اصول سالید در اصل (Interface Segregation) فرمودن ، هر اینترفیس بهتره که یک متد یا نهایت دو متد داشته باشه و اصطلاحا اینترفیس چاق طراحی نکنیم .
راهکار درست اینجا میتونه این باشه که اینترفیس های مرتبط رو پیاده سازی کنیم و extend کنیم داخل یک اینترفیس ؟
یا راه درست چی هست ؟
درود
اگر قرار یک اینترفیسی داشته باشید که توی هر شرایطی مثلا ۴ متد داخل قراره استفاده بشه و قراره پیاده سازی بشه بهتره همون ۴ تا متد رو داخل interface قرار بدید.
ولی مثلا اگه قرار باشه یک سری متد داخل interfaceی داشته باشید که به درد هر کلاسی نمیخوره و پیاده سازییش نمیکنه اون موقع بهتره متدهارو جدا کنید و داخل interfaceهای مربوط به خودشون قرار بدید.
برای مثال اگه یک کلاستون متد pay حتما داره اما ممکنه که verify نداشته باشه میتونید خود verify رو داخل یه interface جدا بزارید تا اگه کلاسی نیاز داشت implemente کنه