سلام و خسته نباشید
دو تا سوال داشتم
سوال اول : تویه این کلیپ مطرح شد که وقتی از کیورد new داخل یک کلاس استفاده میکنیم احتمال داره اصل Dependency Inversion رو نقض کنیم میخواستم بدونم چه وقتایی آزادیم داخل کلاسمون مستقیما یک شی new کنیم بدون اینکه اصل Dependency Inversion نقض بشه. مثلا وقتی کلاسهای فریم ورکها یا پکیجهای مطرح رو نگا میکنم میبینم که تو بعضی کلاسها مستقیما از یک کلاس دیگه new شده
و سوال دوم اینکه ما باید اصل Dependency Inversion از همون ابتدا پیاده سازی کنیم ؟ مثلا پروژه من دو تا کلاس sessionBasket و payment داره که حالا در آینده احتمال داره من بیام کلاس databaseBasket رو هم به پروژم اضافه کنم حالا سوالم اینه که از همون ابتدا من باید پروژه رو طوری پیاده سازی کنم (با استفاده از اصل Dependency Inversion ) که وقتی در آینده کلاس databaseBasket رو اضافه کردم مشکلی ایجا نشه؟ یا نه در همون ابتدا من در کلاس payment میام مستقیما یک شی از sessionBasket ایجاد میکنم (payment به concrete وابسته میشه) و پروژ رو جلو میبرم حالا وقتی تو آینده کلاس databaseBasket رو به پروژم اضافه کردم میام کدم رو refactor میکنم و اون رو بر مبنای اصل Dependency Inversion پیاده سازی میکنم
ممنون میشم جدا جدا پاسخ بدید