برچسب: شی گرا

جدید وراثت کلاس ها در پایتون

مانند هر زبان شی گرای دیگر، پایتون نیز از مفهوم وراثت کلاس پشتیبانی می کند. وراثت به ما اجازه می دهد تا یک کلاس جدید را از دل یک کلاس موجود ایجاد کنیم.کلاس جدیدی که ایجاد می شود به عنوان زیر کلاس (کلاس فرزند یا مشتق شده) و کلاس موجود که کلاس فرزند از آن مشتق شده است به عنوان سوپرکلاس (کلاس والد یا پایه) شناخته می شود.زیر کلاس یا کلاس فرزند کلاسی است که ارث می برد. سوپرکلاس یا کلاس والد کلاسی است که متدها و/یا ویژگی ها از آن به ارث برده می شوند.بگذارید برای بررسی این مفهوم به سراغ مثال قبلی برویم. کلاس Person می تواند اعضای شاغل در یک شرکت را تولید کند و بعضی ویژگی های مربوط به انها را مشخص کند. مثل نام و نام خانوادگی و شماره پرسنلی و حقوق. اما همه اعضای یک شرکت لزوما موقعیت های مشابهی ندارند. فرض کنید قصد داریم اعضای یک شرکت را به دو دسته کارمند و سهامدار تقسیم کنیم. بنابراین لازم است برای هر کدام یک کلاس جداگانه تعریف نماییم. اما بعضی خصوصیات هر دو دسته مشابه هم است. مثلا هر دو نام و نام خانوادگی دارند. بازنویسی همه آن کد [ . . . ]

  • 84 بازدید
  • 0
  • 2 دسامبر, 2023
ادامه مطلب

جدید کپسوله سازی یا Encapsulation در پایتون

کپسوله‌سازی فرآیندی است برای جلوگیری از دسترسی مشتریان به بعضی ویژگی‌های ، که فقط از طریق روش‌های خاص قابل دسترسی است. ویژگی‌های خصوصی ویژگی‌های غیرقابل دسترسی هستند و ما از دو underscore  (__) برای اعلام ویژگی های خصوصی استفاده می کنیم. مثال قبلی را در نظر بگیرید. فرض کنید می خواهیم در کلاس Person متدی داشته باشیم که تعداد ساعت اضافه کار کارمند در یک ماه را بگیرد و اضافه حقوق این ماه او را به ما بدهد. ابتدا لازم است یک ویژگی خصوص در __init__ اضافه کنیم که دستمزد اضافه کاری به ازای هر یک ساعت را در آن ذخیره کنیم: همچنین باید یک متد به کلاس اضافه کنیم که تعداد ساعت اضافه کار را بگیرد و اضافه حقوق را محاسبه نماید و برگرداند: کلاس را به طور کامل می توانید در زیر مشاهده کنید: حالا یک عضو تعیین می کنیم و سپس مقدار اضافه حقوق او را دریافت می نماییم: با توجه به اینکه دستمزد یک ساعت اضافه حقوق را از طریق self.__extraperhour معادل 500000 ریال تعریف کرده بودیم، این کارمند به ازای 9 ساعت اضافه کار مبلغ 4500000 ریال اضافه حقوق دریافت خواهد کرد. حالا اگر تلاش کنید که با دستور زیر [ . . . ]

  • 103 بازدید
  • 0
  • 2 دسامبر, 2023
ادامه مطلب

جدید کلاسها و اشیا در پایتون

در برنامه نویسی شی گرا (OOP)، یک کلاس یک طرح یا قالب است که متغیرها و روش های مشترک برای همه اشیاء از یک نوع خاص را تعریف می کند. این یک نوع داده تعریف شده توسط کاربر است که اعضای داده و توابع عضو خود را دارد که با ایجاد نمونه ای از آن کلاس قابل دسترسی و استفاده است. کلاس یک موجودیت منطقی است که گروهی از اشیاء را با خواص و رفتار مشابه نشان می دهد.از طرف دیگر، یک شی نمونه ای از یک کلاس است. شی یک موجود فیزیکی است که نمونه خاصی از یک کلاس را نشان می دهد. هنگامی که یک کلاس تعریف می شود، هیچ حافظه ای به آن تخصیص نمی یابد، اما زمانی که یک شی نمونه سازی می شود (یعنی ایجاد می شود) به آن حافظه تخصیص می یابد. یک شی می تواند چندین بار بنا بر نیاز ایجاد شود.برای نشان دادن این موضوع، اجازه دهید کلاسی به نام ماشین را در نظر بگیریم. کلاس ماشین طرحی است که متغیرها و روش های مشترک برای همه خودروها مانند رنگ، مدل و سال ساخت را تعریف می کند. یک شی از کلاس  نشان دهنده یک ماشین خاص [ . . . ]

  • 111 بازدید
  • 0
  • 2 دسامبر, 2023
ادامه مطلب

جدید معرفی برنامه نویسی شی گرا یا oop

برنامه نویسی شی گرا (OOP) یک الگوی برنامه نویسی است که می توانید از آن برای مدل سازی دنیای واقعی در کد استفاده کنید. استفاده از این پارادایم مزایای متعددی دارد. با OOP، می‌توانید پیاده‌سازی‌هایی ایجاد کنید که به راحتی قابل تغییر و گسترش با کد کمتر هستند. این بر اساس ایده گروه بندی داده ها و توابع مرتبط به گروه های اطلاعات است. این گروه ها به عنوان اجسام شناخته می شوند. برنامه نویسی شی گرا (OOP) یک الگوی برنامه نویسی است که بر مفهوم کلاس ها و اشیاء تکیه دارد. برای ایجاد ساختار یک برنامه نرم افزاری به قطعات ساده و قابل استفاده مجدد از قطعه های کد (معمولاً کلاس ها) استفاده می شود که برای ایجاد نمونه های جداگانه از اشیاء استفاده می شود. OOP به گونه ای طراحی شده است که هنگام برنامه نویسی باید روی یک شی تمرکز کرد نه بر روی رویه ها. یک شی می تواند هر چیزی باشد که در اطراف خود می بینیم. مثلا می تواند یک انسان باشد که دارای برخی ویژگی ها است مانند – نام، آدرس، کد ملی و غیره، یا یک صندلی که بر اساس اندازه، رنگ، مواد به کار رفته، قیمت [ . . . ]

  • 87 بازدید
  • 0
  • 2 دسامبر, 2023
ادامه مطلب