شی گرایی یک الگو و شیوه تفکر در برنامه نویسی است. رویکرد برنامه نویسی شی گرا از جزء به کل یا پایین به بالا است (Bottom-Up). یعنی در ابتدا واحدهای کوچکی از برنامه ایجاد میشوند و با پیوند این واحدهای کوچک به یکدیگر، واحدهای بزرگتر شکل میگیرند و به همین ترتیب برنامه کاملتر میشود. برنامه نویسی شی گرا دو مفهوم کلاس (Class) و شی (Object) را ارائه میدهد.
شی گرایی در برنامه نویسی میتواند مشکلات زیادی را برای شما حل کند و باعث سادهتر شدن فرآیند کدنویسی شود. از آنجایی که مفاهیم شی گرایی به شدت به دنیای واقعی نزدیک است، درک آن برای برنامه نویس آسان خواهد بود. در شی گرایی برخلاف روشهای کدنویسی دیگر مانند رویه ای به جای دست و پنجه نرمکردن با تعداد زیادی متغیر و توابع، مستقیما با اشیا (Objects) کار میکنید. برای درک بهتر این موضوع بهتر است با مثالی این مطلب را توضیح دهیم.