در این مطلب می خواهیم شما را با برنامه نویسی شی گرا آشنا کنیم . با ما همراه باشید .
بیایید این طوری شروع کنیم ، اگر اطراف خود را نگاه کنید بسیاری شی را خواهید دید . مرد ، حیوانات ، گیاهان ، ماشین ها و … همه را می توان شی در نظر گرفت .
اگر بخواهیم شی ها را به دو صورت متحرک و ثابت تقسیم می کنیم .

مثلا انسان ها را شی های متحرک در نظر میگیریم و دیگر اشیا همانند موبایل ، لپ تاپ و … را شی های ثابت به حساب می آوریم .
ولی یک نکته مهم که در میان همه شی ها یکسان است ، این است که همه دارای یک سری خصوصیات و صفات هستند . ( مثلا اندازه ، وزن و … ) و اینکه همچنین دارای یک سری رفتار نیز هستند . مثلا انسان ها راه می روند ، حرف میزنند و …
همه ی ما با بررسی رفتار و صفت شی های اطرافمان چیز هایی در مورد آنها یاد میگیریم . یک سری شی ها نیز دارای رفتار های یکسانی هستند .مثلا یک کودک و یک انسان بزرگسال دارای یک سری رفتار مشابه هستند .
راه می روند ، حرف میزنند و …رفتار انسان ها در برابر شی ها را می توانند در کامپیوتر و برنامه نویسی همان طراحی شی گرا در نظر گرفت .

OOD ( Object Oriented Design )

در استفاده از OOD می توان به خاصیت ارث بری اشاره کرد که در آن کلاس های جدید از قابلیت های کلاس های قبل استفاده می کنند . OOD به حالت طراحی برنامه شی گرا اشاره دارد و با ارتباط مابین شی ها را مدلسازی میکند .

برنامه نویسی شی گرا ( OOP )

Object Oriented Programming
زبان های برنامه نویسی همانند جاوا همه شی گرا هستند . که به آنها زبان های برنامه نویسی شی گرا گفته می شود .
در این زبان های برنامه نویسی مثلا جاوا برنامه ها از کلاس ها تشکیل می شوند که خود کلاس ها دارای متد ها می باشند ( این متد ها عملیات های برنامه را پیاده سازی می کنند )
در جاوا شما بر روی ایجاد کلاس ها تمرکز می کنید و هنگام استفاده از آنها براحتی با ایجاد یک شی از کلاس ها به متد های آن کلاس دسترسی خواهید داشت .
این موضوع را این گونه توضیح می دهم ، فرض کنید شما یک دستور پخت کیک دارید ، شما نمیتوانید دستور پخت کیک را نوش جان کنید .
برای استفاده از آن باید بر اساس ان دستور پخت یک کیک خوشمزه را درست کنید و آن را میل کنید .

در اینجا دستور پخت را کلاس و کیک حاضر شده را شی ای از آن کلاس در نظر میگیریم .
کلاس ها می توانند با دیگر کلاس ها در ارتباط باشند ( این مورد را در آموزش های جاوا توضیح خواهم داد )
فعلا در همین حد با برنامه نویسی شی گرا آشنا باشید تا ، در آموزش جاوا این موارد به به صورت کامل برای شما توضیح میدهم .