براین اساس، اپلیکیشن نویسی شیگرا به شما این اذن را می دهد که به آسانی رفتارهای بغرنجی یک سیستم حقیقی را سبک نمایید. با اپلیکیشن نویسی شیگرا، داده و تابع (شناسهها و متدها (method)) با هم در یک شئ طراحی اپلیکیشن در مشهد توده می شوند.
این موضوع نیاز به داشتن دادههای مشترک (shared data) یا این که دادههای سراسری (global data) را در نرمافزار نادر مینماید. این تفاوت مهم اپ نویسی شیگرا و رویکردهای شیوهای میباشد.
اصول نرم افزار نویسی شی گرا
اپلیکیشن نویسی شی گرا مبنی بر چهارمورد که به تفصیل آن پرداخته می شود، صورت گرفته میباشد:
۱) کپسوله سازی ( Encapsulation )
خصوصیت های مرتبط با هر شی در محدوده و کلاس مرتبط با خویش شی قرار میگیرد. شی ها دیگر اقتدار دسترسی و ساخت تغییرات در داده های کلاس را ندارند و صرفا میتوانند به لیستی از توابع کلاس که بصورت همگانی تعریفوتمجید گردیده اند دسترسی داشته باشند. این خصوصیت در نرمافزار نویسی شی گرا سبب ساز بالا رفتن امنیت و خودداری از خرابی ناخواسته داده ها شدهاست.
۲) انتزاع ( abstraction)
با خواص abstraction، در اپلیکیشن نویسی شی گرا در بدنه اساسی هیچ کدی نوشته نمیشود و به همین استدلال نمی توانیم مستقیما از روی کلاس های انتزاعی شی ءها را بسازیم. معنا انتزاعی زیرا کد مشخصی ندارد به برنامه نویس ها امداد می نماید تا به راحتی بتوانند تغییرات و افزودنی های خویش را در طی مجال جاری ساختن دهند. از جمله در حالتی که در طرحی مشی چاپ داشته باشیم قادر خواهیم بود بدنه این اسلوب را تمجید نکنیم. آنگاه کلاس های فرزند از این سیاق بسازیم و کدهای بدنه را دراین کلاس های فرزند تعریفوتمجید کنیم و به راحتی از آنها شی بسازیم.
۳) ارث بری و وراثت (Inheritance)
در معنی وراثت می توانیم برای یک شی اشیاء و ارتباط ها اختصاصی به شخصی را طراحی کنیم درصورتیکه این مشخصات در شی دیگری تکراری بود به راحتی میتواند از کلاس فراتر خویش خصوصیت های مشترک را ارث بری نماید فارغ از اینکه به خواص مخصوص هردو لطمه ای وارد گردد. این خصوصیت در اپ نویسی شی گرا، یک بررسی داده با جزییات بیشتر را به اپ نویس ارائه می نماید و مجال توسعه و گسترش را کاهش داده و سطح توجه را فراتر میبرد. به عنوان مثال: در صورتی بشر را تحت عنوان یک شی در حیث بگیریم بابا خانواده ممکن میباشد مو سر رنگی و دیده رنگی داشته باشد این خصوصیت میتواند به فرزندان وی وابستگی بگیرد علاوه بر اینکه برای هر یک یک خصوصیت منحصربهفرد در حیث گرفته میگردد.
۴) چندریختی(Polymorphism)
با به کار گیری از معنا یکسری ریختی به راحتی میتوانیم یک روال همگانی تعریفوتمجید کرده که هربار ورودی های متفاوتی داشته باشد. مثلا در شرایطیکه بشرها را اشیاء در لحاظ بگیریم همگی آنها طعام میخورند پس قادر خواهیم بود یک اسلوب به اسم FOOD برای آن ها در لحاظ گرفت ولی می بایست بدین نکته توجه داشت که کلیه اشخاص غذاهای یکسانی نمیخورند. براین اساس مشی FOOD میتواند هربار و برای هریک از اشخاص با ورودی های متفاوتی مصرف شود.
این چهار اصل از اصول اپ نویسی شی گرا میباشند که دراین سبک از اپلیکیشن نویسی به فعالیت برده میشوند. به این ترتیب میقدرت اذعان کرد که با اپلیکیشن نویسی شی گرا کدنویسی بسیار نرم و نظم دهی گردیده میگردد. به همین استدلال برنامه نویس ها این سبک را به سبک های سابق ترجیح میدهند. پیرو مقاله چندین گویش نرمافزار نویسی که بر شالوده اصول و مفاهیم شی گرایی صورت گرفته و از مضمون شی گرایی به کارگیری می نمایند را تنها اسم می بریم.
مزایای نرم افزارنویسی شیگرا
ارتقا امنیت نرم افزار
کاهش هزینه حفظ
قابلیت و امکان به کارگیری دوباره
بررسی بی آلایشخیس نرمافزار
امکان مرتب سازی با صرفه خیس کدها
عدم نیاز به تایپ کردن کدهای تکراری و امکانهایی که پیش از این پیادهسازی گردیدهاند و صرف جویی در به کار گیری از منابع
امکان تقسیم نرمافزار به اپلیکیشنهای خرد خیس البته غیروابسته
توده بندی
درین نوشتهیعلمی به اختصار در زمینه ی آنکه نرم افزار نویسی شی گرا چیست و چه کاربردی دارااست توضیح دادیم. اصول اپ نویسی شی گرا را توضیح دادیم و مثالی از کلاس درین اپ نویسی را آوردیم. ما در کلاس های آنلاین نرمافزار نویسی اندروید ، طراحی وب، جاوااسکریپت و پایتون که با همیاری اساتید با تجربه مرزوبوم برگزار می گردد، کلیه این مفاهیم را به طور بی نقص به طور تئوری یار و همدم با نمونه برای شما ارائه خوا هیم نمود تا بتوانید در پروژه های عملی نقطه پایان عصر از آنها با نیکی به کار گیری فرمایید.