تالار گفتگوی کیش تک/ kishtech forum
برنامه نویسی شی گرایی - نسخه‌ی قابل چاپ

+- تالار گفتگوی کیش تک/ kishtech forum (http://forum.kishtech.ir)
+-- انجمن: پردیس فناوری کیش (http://forum.kishtech.ir/forumdisplay.php?fid=1)
+--- انجمن: کارآموزی و کارورزی (http://forum.kishtech.ir/forumdisplay.php?fid=134)
+--- موضوع: برنامه نویسی شی گرایی (/showthread.php?tid=42386)



برنامه نویسی شی گرایی - فاطمه عنایت - 30-06-2020

پردیس فناوری کیش_طرح مشاوره متخصصین صنعت و مدیریت_گروه(برنامه سازی)
شی (Object) : ﺷﯽ ﻳﮏ ﻣﻮﺟﻮدﯾﺖ ﻓﯿﺰﯾﮑﯽ ﯾﺎ ﻣﻔﻬﻮم ﮐﻠﯽ اﺳﺖ ﺑﮕﻮﻧﻪ ای ﮐﻪ دارای ﻫﻮﻳﺖ ﺑﻮده و ﻗﺎدر ﺑﻪ ﺑﺮوز رﻓﺘﺎر و ﺛﺒﺖ ﺣﺎﻻت ﺧﻮد ﻣﯽ ﺑﺎﺷﺪ.

صفت (property):  ﻫﺮ ﺷﯽ ﯾﮑﺴﺮی ﺧﺼﻮﺻﯿﺎت دارد ﮐﻪ ﺑﻪ آﻧﻬﺎ  ﺻﻔﺖ ﮔﻔﺘﻪ ﻣﯽ ﺷﻮد. ﮐﻪ در واﻗﻊ ﯾﮏ مقدار و ارزش مشخصی برای آن به ازای هر شی می تواند وجود داشته باشد. مانند طول، ارتفاع، رنگ و … .

روش (Method) : هر شی در واقع یک سری رفتار دارد که به آن ها روش یا متد، گفته می شود. ﻣﺘﺪ در واﻗﻊ   ﭘﺎﺳﺦ ﻫﺎﯾﯽ اﺳﺖ ﮐﻪ آن ﺷﯽ در ﻣﻘﺎﺑل تحریکات ﻣﺤﯿﻂ از ﺧﻮد ﻧﺸﺎن می دهد.

کلاس (Class) : به مجموعه ای از اشیا که دارای ویژگی و رفتار مشترک باشند، کلاس می گویند. یک class نمونه ی اولیه ای است که هر object از روی آن ساخته می شود.کلاس دانشجو، کلاس انسان، کلاس ماشین و …

کلاس ها مانند نقشه های ساختمان هستند. .ﯾﻚ ﻛﻼس، ﻧﻘﺸﻪ اﯾﺠﺎد ﯾﻚ ﺷﯽ از ﻛﻼس است. همانطور که می توانیم خانه های زیادی از روی یک نقشه بسازیم، می توانیم تعدادی شی از روی یک کلاس، نمونه سازی کنیم.

مدل شی گرا
ﯾﮏ ﻣﺪل ﺷﯽ ﮔﺮا ﻣﺠﻤﻮﻋﻪ ای اﺳﺖ از اﺷﯿﺎء و ﮐﻼس ﻫﺎ ﮐﻪ در ﺟﻬﺖ ﭘﯿﺎده ﺳﺎزی رﻓﺘﺎر ﮐﻞ ﺳﯿﺴﺘﻢ ﺑﻪ ﯾﮑﺪﯾﮕﺮ ﭘﯿﻐﺎم ﻣﯽ ﻓﺮﺳﺘﻨﺪ و اﻋﻤﺎﻟﯽ را انجام ﻣﯽ دﻫﻨﺪ .ﯾﮏ ﺷﯽ، ﺳﺎﺧﺘﻤﺎن داده و رفتار مربوطه اش را یک جا و به طور مجتمع در خود نگاه می دارد.

ویژگی های زبان های برنامه نویسی شی گرا
تجرید ( انتزاع، مجرذ سازی) : یعنی نادیده گرفتن جنبه هایی از مسئله که فعلا مورد نیاز ما نیستند. همچنین ما می توانیم یک دید کلی از مسئله داشته باشیم. بدون آنکه نیاز به ورود در جزئیات داشته باشیم. مانند نقشه ی شهر و کشور
محصور سازی: جزئیات یک فرایند یا عمل از دید از مخفی باشد. صفات و اطلاعات یک شی از دیدی سایر اشیا مخفی باشد و ارتباط از طریق تبادل پیام صورت بگیرد. ﮐﺎرﺑﺮان ﻓﻘﻂ ﺑﻪ واﺳﻂ اﺳﺘﻔﺎده واﺑﺴﺘﻪ ﻫﺴﺘﻨﺪ و ﻧﻪ ﺑﻪ ﺟﺰﺋﻴﺎت ﭘﻴﺎده‌ﺳﺎزی
وراثت : وراثت برای بیان شباهت ها است. برای اجتناب از تکرار خصوصیات مشترک یک کلاس انسان می سازیم. سپس صفات مشترک را در همه ی نمونه اشیای ساخته شده از کلاس انسان به ارث می برند.
قابلت استفاده مجدد : اﺳﺘﻔﺎده ﻣﺠﺪد ﻗﺎﺑﻠﯿﺘﯽ اﺳﺖ ﮐﻪ ﺑﯿﺎن ﮔﺮ اﺳﺘﻔﺎده دوﺑﺎره از ﭼﯿﺰی اﺳﺖ ﮐﻪ ﻫﻢ اﮐﻨﻮن وجود دارد. ﻗﺎﺑﻠﯿﺖ اﺳﺘﻔﺎده ﻣﺠﺪد ﺧﺎﺻﯿﺘﯽ اﺳﺖ ﮐﻪ ﻫﺮ روز از آن اﺳﺘﻔﺎده ﻣﯽ ﮐﻨﯿﻢ و در برنامه نویسی قابلیت فوق العاده ای را به وجود آورده است.
مزایای برنامه‌نویسی شئ‌گرا چیست؟
 افزایش امنیت برنامه
کاهش هزینه نگهداری
قابلیت استفاده مجدد
تحلیل ساده‌تر برنامه
قابلیت سازمان دهی بهینه تر کدها
عدم نیاز به نوشتن کدهای تکراری و قابلیت‌هایی که قبلا پیاده‌سازی شده‌اند و صرف جویی در استفاده از منابع
قابلیت تقسیم برنامه به برنامه‌های کوچک تر اما مستقل
همانطور که گفتیم برنامه‌نویسی شی گرا به شدت به دنیای واقعی ما انسان‌ها شباهت دارد و معمولا ساده‌تر توسط ذهن درک می‌شود، بنابراین سعی کنید تا حد ممکن برنامه‌های خود را با استفاده از اصول شی گرایی نوشته و به دنیای برنامه‌نویسان حرفه‌ای نزدیک‌تر شوید، با این کار از قابلیت های بسیار خوب این روش برنامه نویسی بهره مند می شوید.