سلام وقت بخیر دوستان
من سه تا کلاس دارم
کلاس اول مثلا کارش گرفتن اطلاعات پرواز از دیتابیس هست
گلاس دوم کارش گرفتن اطلاعات مسافران از دیتابیس و بررسی وجود اون پرواز تو کلاس اول هست
کلاس سوم هم نمایش اطلاعات
من اومدم کلاس دو رو اکستند کردم از کلاس یک
حالا من میخوام گاهی وقتا از کلاس دوم استفاده کنم که مثلا فقط اطلاعات یک کاربر رو در بیارم
و رسما به اطلاعات پرواز که تو کلاس یک هست نیازی ندارم
ولی این کلاس تو کلاس دو extends شده
حالا ممنون میشم راهنمایی کنید با دیزاین پترن ها چطور میشه این اکستند کردن رو برداشت که کلاس دو دیگه کارش گیره کلاس یک نباشه
شدنی هست یا نه
ممنون میشم
در واقع کلاس ۲ شما برای یه کار کوچک، تمام عملکردهای کلاس ۱ رو به ارث میبره... در صورتی که شما نیازی به چنین حالتی ندارید.
این جاست که الگوهای طراحی به داد ما میرسند و شما میتونید الگوی دکوراتور (Decorator) و یا الگوی کامپوزیت (Composition) رو جایگزین وراثت کنید.
در توضیح الگوهای بالا:
@madadi
طریقه پیادهسازی این سیستم با الگوی طراحی دکوراتور:
جهت توضیحات کاملتر میتونید به نوشته من ( الگوی طراحی دکوراتور (Decorator) در زبان PHP ) در ویرگول مراجعه کنید.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟