Object Orient Programming شیوه ای از برنامه نویسی است که موجودیتهای نرم افزار را به صورت شی یا Object میبیند. قبل از ظهور برنامه نویسی شی گرا ، برنامهها اغلب به شکل Procedural یا رویه ای نوشته میشد. در برنامه نویسی رویه ای برنامهها به توابع تقسیم میشدند. یعنی برنامه از متغیرهایی که اطلاعات را ذخیره و توابعی که عملیات مورد نظر را روی اطلاعات انجام میدادند تشکیل میشد. اما با بزرگ شدن نرم افزار برنامه نویسان مجبور به تکرار کدها به صورت مکرر میشدند. توابع در قسمتهای مختلف به صورت نامرتب و تو در تو یکدیگر را صدا میزدند و برنامه به اصلاح به یک کد Spagetti تبدیل میشد. کد اسپاگتی به کدی اطلاق میشود که در آن توابع و قطعات کد مختلف به هم وابسته و در هم ریخته اند و در نتیجه ایجاد تغییر در یک تابع باعث به هم ریختن توابع زیادی میشود.
در دوره آموزشی Udemy C# OOP Concepts: Apply C# OOP Concepts On Real C# Projects با آموزش شی گرایی در سی شارپ اشنا خواهید شد.