صفت ها و رفتار های یک شیء؟
سلام دوستان تو مبحث شیء گرایی،شیء به چیزی گفته میشه که یه سری صفات داره و رفتارهای خاصی رو از خودش بروز میده برای مثال ماشین یه شِیء هست صفات اون هم مثلاً جنس بدنه و... و رفتارش هم حرکت کردن،بوق زدن و... یک شیء ای مثل کت یا شلوار یه صفاتی دارن مثل رنگ و نوع پارچه اما رفتارهاش چین؟؟؟
نقل قول: صفت ها و رفتار های یک شیء؟
شما لزومن نمی تونی هر چیزی که تو دنیای واقعی هست رو با همون تفکر عادی به شی تبدیل کنی. این سوالی که برات پیش اومده خیلی موضوع رایجی میتونه باشه.
خیلی وقتا شی هایی هستن که بیشتر حالت و وضعیت (یا همون مشخصه) دارن تا رفتار... مثل همین کت و شلوار
خیلی وقتا هم شی هایی هستن که بیشتر رفتار دارن تا خصوصیات مثل دلال ها یا برنامه ریزها یا ...
اما بالاخره بسته به شرایط گاهی میشه رفتار هایی رو توی سیستم به اینجور اشیا داد... بستگی به موضوع سیستم و مسئله داره. مثلن کت می تونه عملیاتی مثل تغییر وضعیت دادن... کثیف شدن... تمیز شدن... پاره شدن... چروک شدن... داشته باشه.
نقل قول: صفت ها و رفتار های یک شیء؟
ممنون از پاسخ خوبتون آیا در یک سیستم بخواهیم قیمت مثلن یک کت رو حساب کنیم آیا این قیمت رو میشه به عنوان یک رفتار برای این کت در نظر گرفت؟
نقل قول: صفت ها و رفتار های یک شیء؟
شاید آره شاید نه!
بزار اینطوری بگم:
اگر توی محاسبه قیمت از خصوصیات کت بیشتر استفاده میشه!!! یعنی مثل اندازه و متراژ پارچه و رنگ و مدل یقه و... خب آره بزارید توی کت که نزدیک به همون خصوصیات باشه که بهش احتیاج داره!
اگر توی محاسبه قیمت از خصوصیات دیگه ای استفاده میشه که توی کلاس های دیگه هستن اونوقت بزاریدش توی اون کلاسی که نزدیک ترین خصوصیات و بیشترینش اونجا هستن
حتمن متوجه شدید فلسفه شی گرایی نزدیک کردن عملیات به داده های مورد نیازش هست! نه همین طوری کلاس و متد تعریف کردن!
متد رو تو کلاسی بزارید که حاوی بیشترین خصوصیات (داده های) مورد نیاز اون متد هستش تا خیلی مجبور نباشه به جاهای دیگه دسترسی داشته باشه تا داده های مورد نیاز رو بگیره!