💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۵ امیر رحمانی
ارتباط اشیا با اشیای درون خود
جامعه جاوا (وب و دسکتاپ) ایجاد شده در ۲۴ فروردین ۱۴۰۱

سلام استاد وقت بخیر

استاد راجع به ارتباط اشیا با اشیا بیرون از کلاس در قسمت شی گرایی صحبت شد مثل مثال خودرو که یکسری رفتارهای مشترک بین کلاس هایی که رفتار‌های مشابه داشتند اشتراک گذاشته می‌شد و روابط is-a و .. برقرار بود ولی راجع به ارتباط اشیا با اشیا درون خود صحبت نشد که این ارتباط باید به چه صورت باشه حالا چون مثال خودرو و ماشین فک کنم پیچیده باشه، ولی تو پروژه ماشین حساب شما خواستید که با ساختن کلاس‌های دیگه کد رو ساده‌تر کنیم، خب ماشین حساب رو اگه با نگاه abstract نگاه کنیم، یه ماشین حساب ساده از یک صفحه نمایش تشکیل شده و یک صفحه کلید اگه این قسمت هارو بخوایم جدا کنیم به چه صورت باید عمل کنیم.؟ حالا صفحه نمایش ساده تره کارش مشخصه و ارتباطی با صفحه کلید نداره و فقط مقداری رو نمایش میده یا پاک میکنه یا یکسری تکست رو چاپ میکنه ولی صفحه کلید علاوه بر اینکه از یکسری باتن‌ها تشکیل شده خود این باتن هام یکسری عملیات رو باید تشخیص و انجام بدن و در نهایت باید رو صفحه نمایش نشون بدن الان استاد اینجا دیگه خبری از رابطه is-a و ارث بری بین اشیا داخل کلاس نیست این قسمت هارو چطور باید به هم وصل کنیم و ارتباط برقرار کنیم؟

ما پروژه ماشین حساب رو کامل کردیم ولی نتونستیم این قسمت هارو بدرستی جدا کنیم و ارتباطی بینشون برقرار کنیم.

ممنون

سلام امیر جان،

در مورد ماشین حساب مثال زدی باید بگم که ما باید از ابسترکشن استفاده کنیم بین صفحه کلید و باتن‌ها با منطق برنامه که جمع و تفریق هست.

هدف این هست که اگر فردا صفحه ماشین حساب ما تغییر کرد و مثلا رفت روی یک صفحه وب، ما به کد جمع و تفریق دست نزنیم.

یک پروژه کامل در انتهای قسمت پیشرفته با هم انجام خواهیم داد که این مسائل توضیح داده شده.

آیا سوالت رو درست فهمیدم یا منظورت چیز دیگه ای بود؟

سپهر نامدار ۲۴ فروردین ۱۴۰۱، ۱۱:۰۴

ممنون استاد، بله یه بخشی از سوالم جوابش رو متوجه شدم ولی یک بخشی رو هنوز متوجه نشدم

بخش بعدی استاد منظورم این بود که خود کلاس ماشین حساب که صفحه کلید و صفحه نمایش رو ازش جداکردیم. اینجا استاد برای اینکه ارتباط کلاس اصلی با هر کدوم ازین کلاس‌ها رو داشته باشیم، باید یک پراپرتی با تایپ صفحه کلید و صفحه نمایش داشته باشیم و بعد تو کلاس اصلی راه اندازی و صدا زده بشن؟ یا اینکه نه تو خود کلاس صفحه کلید اینکار می‌کنیم.؟ و دیگه کلاس سومی نداریم

امیر رحمانی ۲۴ فروردین ۱۴۰۱، ۱۶:۰۴

باز مطمئن نیستم که سوال رو درست فهمیدن یا نه.

وقتی یک ابسترکشن بین ماشین حساب و کلاسی که جمع و تفریق رو انجام میده ایجاد میکنیم، یک سری اطلاعات از صفحه کلید میرسه به کلاس جمع و تفریق.

این اطلاعات توی ابسترکشن تعیین میشه.

یعنی ابسترکشن کار یک قرارداد بین صفحه کلید و کلاس جمع و تفریق رو بازی میکنه.

اگر هنوز جواب سوالت رو نگرفتی توی تلگرام یا واتساپ باهام تماس بگیر.

0033629636249

سپهر نامدار ۲۴ فروردین ۱۴۰۱، ۱۶:۰۹

ممنون استاد،پس با اجازه من تو تلگرام بهتون پیام میدم شاید منظورم واضح‌تر بتونم برسونم

امیر رحمانی ۲۴ فروردین ۱۴۰۱، ۱۷:۱۷

امیر جان سلام وقت بخیر

ممنون میشم هر موقع مشکلتون حل شد تاپیک رو تایید کنید

بهترین پاسخ
پوریا شفیعی ۲۵ فروردین ۱۴۰۱، ۰۷:۰۱