دانیال صناعی
دانیال صناعی
خواندن ۴ دقیقه·۳ سال پیش

بررسی مفهوم شی گرایی



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

توی این مقاله با مفهوم شی گرایی آشنا میشیم و خود شی گرایی آموزش نمیدیم .

سر و‌کله این شی گرایی چه طوری پیدا شد ؟

روند پیدایش شی گرایی در برنامه نویسی
روند پیدایش شی گرایی در برنامه نویسی



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

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

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


مفهوم شی گرایی با مثال های متنوع


مفهوم شی گرایی با مثال مسافرت
مفهوم شی گرایی با مثال مسافرت


ببین فرض کن میخوایی بری مسافرت و الان میخوایی وسایلت جمع کنی ، خب یه راه حل اینه که بیایی همه چیز بندازی توی یه چمدون د برو که رفتیم ، راه حل بهتر ، اینه که وسایلمونو توی دسته های مختلف بزاریم ، مثلا لباس هامونو توی چمدون لباسی ، وسایل بهداشتی توی یه چمدون دیگه ، لوازم دیجیتالمونم یه جای دیگه بزاریم .

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

مثال بازی شطرنج


ببین بازی شطرنج در نظر بگیر ، هر مهره ، جز یه دسته ای  ، یا سربازه ، یا رخه ، یا شاهه ، یا وزیر و غیره ، حالا اگه به ما بگن بیا یه بازی شطرنج برامون برنامه نویسی کن ، میگیم خوب ، باید برای هر دسته یه کلاس درست کنم ، مثلا کلاس رخ ، کلاس شاه ، کلاس سرباز .

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

هر کدوم از این آبجکت ها ، رفتار های مشابه دارند مثلا یه جور حرکت میکنند ، یه جور حمله میکنند و غیره . حالا در عین حال ، هر نمونه ای ، میتونه ویژگی های خاص خودش داشته باشه ، مثلا یه سرباز میتونه رنگش سفید باشه یا سیاه یا مثلا طولش بلند باشه یا کوتاه و سایر موارد ‌ .


حالا ما اگه بخواییم به سربازمون بگیم یه گام به جلو برو میاییم توی کلاس سرباز ، متد Move صدا میزنیم و ورودی که میخواد که همون تعداد گام هایی که میخواییم مهرمون حرکت کنه ، بش میدیم ، به همین راحتی اومدیم از شی گرایی برای برنامه نویسی استفاده کردیم .



چرا باید از شی گرایی استفاده کنیم ؟

دلایل استفاده از شی گرایی
دلایل استفاده از شی گرایی


  • با استفاده از شی گرایی کد های قابل فهم تر و تمیز تری داریم .
  • میتونیم خیلی راحت تر منطق پروژه پیاده سازی کنیم و به همین دلیل میتونیم سرعت بسیار بالاتری در کد زنی داشته باشیم .
  • هر قابلیتی که خواستیم اضافه کنیم یا هر مشکلی که خواستیم برطرف کنیم ، خیلی راحت و سریع میتونیم این کار انجام بدیم ، چون همه چیز مرتب و منظمه دقیقا مثل اون مثال مسافرته .
  • اکثر زبان های امروزی به شکل شی گرا توسعه پیدا کردند و برای اینکه بتونبم به بهترین نحو ازشون استفاده کنیم باید با شی گرایی آشنا باشیم .


چه زبان هایی شی گرا هستن ؟


زبان های شی گرا
زبان های شی گرا


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


خب دوستان این مقاله آموزشی هم همینجا به پایان رسید هر سوالی داشتید میتونید زیر همین پست بپرسید ، امیدوارم از این محتوای آموزشی خوشتون اومده باشه ، به امید دیدار .

مفهوم شی گراییبررسی شی گراییشی گرایی چی ؟چرا باید از شی گرایی استفاده کنیم ؟
برنامه نویس فول استک وب
شاید از این پست‌ها خوشتان بیاید