درباره اصول برنامه نویسی شی گرا بحث کنید
برنامه نویسی شی گرا (به انگلیسی: Object-Oriented Programming) یک الگوی برنامه نویسی است که از "شکل ها" برای طراحی برنامه ها و برنامه های کامپیوتری استفاده می کند. اشیاء نمونه هایی از کلاس ها هستند که داده ها را به شکل خواص/خصائص و رفتارها به شکل روش ها در بر می گیرند. رویکرد شی گرا به منظور ساده تر کردن مدل سازی یک سیستم دنیای واقعی و استفاده مجدد از کد است. اصول اصلی برنامه نویسی شی گرا عبارتند از: 1. انکاپسولیشن: انکاپسولیشن فرآیند بسته بندی داده ها و عملیات هایی است که بر روی آن داده ها در یک واحد (شکل) کار می کنند. این فرآیند پیاده سازی داخلی یک شی را از دنیای خارج پنهان می کند و یک رابط عمومی برای ارتباطات فراهم می کند. 2. ارث: در OOP، ایجاد وراثت به کلاس هایی که ویژگی ها و روش های کلاس های دیگر را به ارث