در صورتیکه بخواهیم یک کدام از تفاوت های مهم در بین ماشین طراحی اپلیکیشن و بشر را ذکر کنیم، این خواهد بود که درحالتی که با بشر به گویش قابل شعور ایشان صحبت بگوییم، و آن حرف ما مرتبط با حوزه ناشناخته ایشان نباشد، درصد بسیار بالایی از صحبت مارا خواهد فهمید. ولی برای ماشین، زبانی که برای آن قابل شعور میباشد زبانی وجود ندارد که ما بدان صحبت میگوییم. گویش نرمافزار نویسی کامپیوتر فقط روشی میباشد که مراد های خویش از ماشین را با آن ذکر می کنیم. در این مورد مثالهای مختلفی داریم، مانند: نرمافزار نویسی راه و روشای (Procedural Programming)، اپ نویسی شیگرا (Object oriented programming)، نرم افزار نویسی تابعی (Functional Programming) و …
آنچه دراین نوشته خواهیم داشت
نرم افزار نویسی شی گرا
نمونه ملموس اپ نویسی شی گرا
در شی گرایی مضمون کلاس به چه معناست؟
اصول نرمافزار نویسی شی گرا
مزایای نرم افزارنویسی شیگرا
عده بندی
مولف
علی حاجی جعفر
نرمافزار نویسی شی گرا
اپلیکیشن نویسی شئ گرا (Object Oriented Programming) که به اختصار OOP نیز نامیده میگردد، در واقعیت نوعی منطق یا این که الگوست که برگرفته از معاش روزانهی ما بوده و نزدیک به ده سالی ۱۹۶۰ میلادی مطرح شد. در نرم افزار نویسی شی گرا، نرمافزار را مشابه به دنیای حریم و معاش روزانه خودمان می بینیم، در واقعیت برپایهی سبکسازی شی ءها.
در صدر نرمافزار نویسی خط مش ای یا این که (Procedural) بود که دراین طریق کد ها بصورت متوالی و فارغ از ترتیب و ساختار خاصی نوشته و به کار گیری می شدند که خب حتما ایرادات متعددی به یار و همدم داشت، از جمله فکر کنید در درحال حاضر تایپ کردن کد به طور متوالی میباشید و میخواهید که عملیات پرداخت رو پیاده سازی نمائید. طبیعتا جایجای که مخاطب نیاز به پرداخت دارااست شما می بایست کد های مرتبط با پرداخت رو تکرار نمایید. فکرمیکنم مطرح ترین نقص اپلیکیشن نویسی شیوه ای را ادراک نموده اید. با نمونه تحت شل خیس متوجه اهمیت اپ نویسی شی گرا خواهید شد.
نمونه ملموس اپلیکیشن نویسی شی گرا
بیاید برای آنکه اپ نویسی شی گرا را بی نقص متوجه شویم بیایید با یک نمونه آغاز کنیم: در یک آشپزخانه وسایل متعددی وجود دارااست؛ شما سردخانه باطن منزل تان را در حیث بگیرید. خصوصیت هایی از قیبل وزن، فوت، رنگ، نوع کمپرسور و … برای مثال مواقعی میباشند که می شود به تیتر خصوصیت های یک سردخانه در حیث گرفت. در پی فریزر نمونه ما مشتمل بر گروه رفتارهایی میباشد که به عنوان مثال در رتبه مشخصی استارت به خنک کردن فضای یخچال فریزر میکند. شاید حتیدر برخی از سبک های یشرفته خیس فریزر با سنسوری که دارااست آغاز به یخ سازی نماید.
به هر موجودیتی (در نمونه ما یخچال فریزر) که دارنده ویژگی، داده ها، حالت یا این که خلق خاصی باشد یک شئ یا این که Object گفته میگردد، این آبجکت را میقدرت به طور فیزیکی یا این که منطقی در لحاظ گرفت.
به داده ها و خصوصیتهای جانور برای یک شئ ویژگی یا این که Attribute می گویند و اعمالی که یک شئ میتواند از خویش بروز دهد اخلاق و رفتار یا این که Behavior اسم دارا هستند.
پس در نمونه ما Object به عبارتی فریزر ما میباشد و مختصات این شی از قبیل مقدار فوت، بالا یا این که تحت بودن سردخانه attribute و در پایان اینکه در چه دمایی استارت به خنک سازی نماید را می اقتدار اخلاق یا این که Behavior دانست.
در شی گرایی معنا کلاس به چه معناست؟
به گویش بی آلایش میقدرت کلاس را تحت عنوان قالبی برای شی ءها در لحاظ گرفت، برای مثال یخچال فریزر فریز ساید بای ساید یک مثال شئ از کلاس سردخانه میباشد، کلاسها معمولا در بردارندهی مختصات و کردار شی ءها میباشند، از جمله کلاس فریزر حاویی خصوصیتهای یک فریزر مثل فوت، وزن، رنگ، نوع کمپرسور و… میباشد و هر سبک یخچالی که از این کلاس در حیث بگیریم همگی خصوصیتهای نقل شده در کلاس را باطن خویش خواهد داشت.
در شرایطی که اعتنا نمایید متوجه می شوید که شناسهها و رفتارهایی که تعریف و تمجید کردیم منحصرِ یک سبک خاص نیستند. در اینجا کارایی می کنیم یک یخچال فریزر را در کل تعریف و تمجید کنیم؛ می گوییم که سردخانهِ اپلیکیشنی ما دارنده این شناسهها و رفتارهاست.
ممکن میباشد یک فریزر شناسهها و رفتارهای دیگری هم داشته باشد، البته این شناسهها و رفتارهای موردنیاز فعالیت ماست. این به ما امداد مینماید تا نقشهی یک فریزر را پباده سازی کنیم و درپی از این کلاس برای ایجاد شئ به کار گیری میکنیم؛ شئهای یخچال فریزر را با جزئیات می سازیم.
01
02
03
04
05
06
07
08
09
10
11
12
Public Class Refrigerator {
Private String _color;
Private String _model;
Private String _makeyear;
Private String _Compressortype;
Public Void Start (){
..
}
Public Void Turbo Cooling () {
..
}
}
از جمله، با به کار گیری از یک کلاس Refrigerator خواهیم توانست شی ها یخچال فریزر مختلفی بسازیم که سبک، نوع موتور آن و سال ایجاد متفاوتی دارا هستند، البته رفتارهای تمامیشان یکسان میباشد.
- ۹۹/۱۱/۰۹