جلسه بیست و هشتم

شی گرایی

شی‌گرایی

شی گرایی (Object-Oriented Programming – OOP) در پایتون یک پارادایم برنامه‌نویسی است که به برنامه‌نویسان امکان می‌دهد تا مفاهیم و ساختارهای واقعی‌تری را در برنامه‌های خود پیاده‌سازی کنند. شی‌گرایی در پایتون بر پایه چهار اصل اصلی استوار است:

1. **کپسوله‌سازی (Encapsulation)**: تجمیع داده‌ها (attributes) و رفتارهای (methods) مرتبط با هم در یک واحد منسجم به نام کلاس. این امر به انسجام و انتزاع بیشتر کد کمک می‌کند.

 

2. **ابستراکشن (Abstraction)**: پنهان‌سازی جزئیات پیاده‌سازی و در معرض قرار دادن فقط آن بخش از کلاس که برای استفاده‌کنندگان ضروری است. این موضوع باعث می‌شود که پیچیدگی‌های درونی کلاس از دید کاربر پنهان بماند.

 

3. **وراثت (Inheritance)**: امکان ایجاد کلاس‌های جدید بر اساس کلاس‌های موجود. این امر به استفاده مجدد از کد و افزایش سازمان‌دهی برنامه کمک می‌کند.

4. **چندریختی (Polymorphism)**: امکان استفاده از یک رابط مشترک برای اشیاء با انواع مختلف. این ویژگی به انعطاف‌پذیری برنامه کمک می‌کند.

 

در پایتون، کلاس‌ها واحدهای اصلی شی‌گرایی هستند. هر کلاس شامل ویژگی‌ها (attributes) و متدهای (methods) مرتبط با آن است. با استفاده از کلاس‌ها، می‌توان اشیاء (objects) مختلفی را ایجاد کرد که هر یک دارای حالت و رفتار خاص خود هستند.

مثال 1:ساخت کلاس.

ساخت شی از کلاس:

می‌توانید مقدار یک ویژگی را مستقیماً تغییر دهید، یا می‌توانید روش‌هایی بنویسید که به‌روزرسانی مقادیر را با دقت بیشتری مدیریت می‌کنند.

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