codingcogs' logo

Propertyها

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


ویژگی‌ها یا Properties یا Propertyها برای مدیریت attributeهای objectها استفاده می‌شوند. اهمیت این بخش این فصل بسیار زیاد است و تا قبل از موضوع وراثت روی این موضوع تمرکز می‌کنیم. درک عمیق و کاربردی مفاهیم Propertyها بیشتر با کسب تجربه و گذر زمان محقق می‌شود و اگر این بخش برای شما کمی دشوار بود، جای نگرانی نیست!

بسیار خوب! فرض کنید یک object داریم که دو attribute برای height (ارتفاع) و width (پهنا) دارد. میخواهیم که این object و objectهای مشابه از کلاس اولیه، یک property برای سطح ( area ) نیز داشته باشد که حاصل ضرب height در width خواهد بود. اگر بخواهیم هربار در زمان ساخت یا بروزرسانی object مقدار area را محاسبه و ذخیره کنیم، کاری غیر اصولی است. می‌توانیم area را به صورت یک Property تعریف کنیم.

تعریف Propertyها با property decorator یا getter/setter paradigm انجام می‌شود.