تبلیغات
میهن وب هاست

آموزش سی شارپ – بررسی Propertyها

نویسنده : امیر

نظرات : ۰ دیدگاه

بازدید : ۴۵ بازدید

تاریخ : ۱۱ خرداد ۱۳۹۷

در مباحث شی گرا یکی از مهم ترین بخش ها  Propertyها می باشند که در این بخش از آموزش برنامه نویسی سی شارپ به بررسی  Propertyها خواهیم پرداخت.

 

حتما قبل از بررسی بررسی Propertyها نوشته ی مطالب قبلی این دوره ی آموزشی را با هشتگ #دوره آموزشی_سی_شارپ در سایت ما را مطالعه کنید.

 

Propertiesها :

Property یکی دیگر از اعضای کلاس است. برای این‌که با اساس کار Properties آشنا شوید به مثال ساده‌ی زیر توجه کنید:

کاری که Property انجام می‌دهد : کنترل دسترسی و مقداردهی به فیلد می باشد . Property مانند Indexer از get accessor و set accessor استفاده می‌کند تا مقداری را در یک متغیر set و یا مقداری را از آن get کند.

فرم کلی یک property به‌شکل زیر است:

مثال :

 

 

بررسی Auto-Implemented Properties :

می توان propertyهای خیلی ساده را تعریف کرد که دیگر نیازی به متغیر ندارند تا property روی آن‌ها مدیریت داشته باشد. در عوض شما به کامپایلر اجازه می‌دهید که یک متغیر (underlying variable) برای این مورد به‌وجود آورد.

فرم کلی auto-implemented property به‌شکل زیر است:

در این‌جا، type مشخص‌‌کننده‌ی نوع و name مشخص‌کننده‌ ی نام property است. توجه کنید که get و set بدنه ندارند و مستقیماً بعد از آن‌ها semicolon قرار می‌گیرد. این syntax به کامپایلر می‌فهماند که باید یک storage location (که به آن backing field هم گفته می‌شود) برای نگه‌داری مقدار مورد نظر بسازد. این متغیر (backing field) دارای اسم نبوده و مستقیماً برای شما قابل دسترس نیست و تنها می‌توانید از طریق property به آن دسترسی داشته باشید.

همان‌طور که می‌بینید، به‌جای تعریف متغیر مستقیماً property تعریف کرده‌ایم. از آن‌جا که propertyهای تعریف شده public بوده و دارای getter و setter هستند، می‌توانید مقادیر را get و set کنید. بر خلاف propertyهای معمولی ، auto-implemented properties نمی‌توانند read-only یا write-only باشند و همیشه get و set باید تعریف شوند. با این‌که auto- implemented properties روش جالب و راحتی است، تنها زمانی باید از آن استفاده کنید که نیازی به کنترل کردن backing field نداشته باشید.

به‌طور پیش‌فرض، دسترسی به get و set بر اساس دسترسی خود properties (یا indexer) است. به‌عنوان مثال اگر property را به‌صورت public تعریف کنید، get و set نیز public هستند. با این حال می‌توانید برای get و set دسترسی جداگانه (مثلاً private) در نظر بگیرید.

به مثال زیر توجه کنید:

در این مثال، ID در کلاس خودش هم می‌تواند get و هم می‌تواند set شود اما خارج از کلاس فقط قابل get شدن است. همان‌طور که ذکر شد auto-implemented property نمی‌تواند read-only یا write-only باشد (نمی‌تواند فقط get یا set داشته باشد) اما با در نظر گرفتن get یا set به‌صورت private می‌توانید دسترسی را محدود کنید.

 

Recursion چیست :

یک متد می‌تواند خودش را فراخوانی کند (درون خودش، خودش را صدا بزند)، به این پروسه recursion گفته می‌شود و متدی که خودش را صدا زده، recursive است. در مثال زیر محاسبه‌ی factorial را با روش recursive (بازگشتی) و nonrecursive (غیربازگشتی) می‌بینید:

 

خب این جلسه هم به پایان رسید باید به این نکته توجه کنید که مباحث بالا در برنامه نویسی تجاری اهمیت فراوانی دارد.

برای استفاده از تمامی جلسات از هشتگ #دوره آموزشی_سی_شارپ در سایت ما استفاده کنید.

منتظر جلسه ی بعدی دوره آموزشی سی شارپ باشید.

با دوستانتان به اشتراک بگذارید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*

code

مطالب زیر را از دست ندهید: