انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: چرا باید از Setter و Getter استفاده کنیم؟!  (دفعات بازدید: 932 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین Silvio Dante

  • High Hero Member
  • *
  • ارسال: 1221
  • جنسیت : پسر
  • Arch Linux
    • وبلاگ شخصی
چرا باید از Setter و Getter استفاده کنیم؟!
« : 28 فروردین 1397، 10:54 ب‌ظ »
شاید سوالم یکم احمقانه باشه اما تازه دارم شی گرایی کار میکنم و با جاوا هم کار میکنم.
فرض کنید یه همچین کلاسی داریم:
public class myClass {
int number;
}

حالا وقتی میشه توی کلاس اصلی با درست کردن یک شی از این کلاس، و به راحتی با همچین حرکتی:
myObject.number = 5;مقدارش رو تغییر داد و خیلی راحت هم بهش دسترسی داشت (مثلا برای چاپ کردنش):
System.out.println(myObject.number);دیگه چه نیازی به توابع Setter و Getter هست؟!
« آخرین ویرایش: 28 فروردین 1397، 10:56 ب‌ظ توسط Silvio Dante »
به ما نگفته بودند ایران در زمان احمدشاه قاجار چگونه بوده است. همیشه به ما دادند، ما هم فکر کردیم باید می‌داده‌اند و تازه خیال می‌کردیم کم‌مان است باز هم می‌خواستیم!!
فریدون فرخزاد

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4872
  • جنسیت : پسر
  • masoft قدیم
پاسخ : چرا باید از Setter و Getter استفاده کنیم؟!
« پاسخ #1 : 28 فروردین 1397، 11:12 ب‌ظ »
چون فرض بر اینه که شما تنها اسم تابع‌ها رو دریافت می‌کنید و هیچ اطلاعات دیگه‌ای از روند کار اون کلاس ندارید. هر کلاس ممکنه توسط فرد یا گروهی متفاوت طراحی بشه. همزمان می‌تونه موضوعات دیگه‌ای مطرح بشه مثل اینکه ممکنه نیاز باشه با تغییر این متغیر، متغیر دیگه‌ای هم تغییر بکنه و یا ممکنه شما چندین Thread داشته باشید و برای جلوگیری از Data race و شرایطی خاص، بخواید با هر خوندن یا تغییر، کاری در کنار اون انجام بشه که در اکثر مواقع نیازمند یک تابع مجزا خواهد بود.

البته در پروژه‌های کوچیک عموما شی‌گرایی تنها سرعت توسعه و نرم‌افزار رو بدون اینکه سودی برسونه پایین میاره. یاد گرفتن شی‌گرایی بسیار خوبه و پیشنهاد می‌کنم بهش تسلط پیدا بکنید، ولی خیلی خوبه که دقیقا بدونید چرا خوبه و کجا باید ازش استفاده بکنید.

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

آفلاین Silvio Dante

  • High Hero Member
  • *
  • ارسال: 1221
  • جنسیت : پسر
  • Arch Linux
    • وبلاگ شخصی
پاسخ : چرا باید از Setter و Getter استفاده کنیم؟!
« پاسخ #2 : 29 فروردین 1397، 12:02 ق‌ظ »
ممنونم.
به ما نگفته بودند ایران در زمان احمدشاه قاجار چگونه بوده است. همیشه به ما دادند، ما هم فکر کردیم باید می‌داده‌اند و تازه خیال می‌کردیم کم‌مان است باز هم می‌خواستیم!!
فریدون فرخزاد