اجعل رورو44 صفحتك الرئيسية | احفظ رورو44 في مفضلتك | ارسل رورو44 إلى صديقك | أعلن على رورو44 | English Interface

 

 

 

شات خدمات مسجات جوال بطاقات رسائل حب دليل مواقع شات خليجي  دردشة منتديات حسناء الفارس عالم الرومانسية

مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية

 
    دروس في لغات البرمجة  سي شارب - #C
 

 

الدوال --1--#Methods in c



كما هو معروف في أي لغة برمجة إذا واجهتنا  أي مشكلة كبيرة فإن أفضل طريقة لحلها  هي تقسيمها لمجموعة من الأجزاء الصغيرة أو ما يعرف بال module  أو function  "الدّوال " بحيث كل منها تؤدي وظيفة معينة ...ويعرف هذا التكنيك عادة بـما يسمى  بـ divide and conquer ...

وهذه الـ module أو الـ function الدوال  تعرف في ال #C  بما يسمى بـ Method  و Classes  , والمبرمج يستطيع كتابة  الـ Method  لتعريف مهام معينة ومن ثم يستدعيها ( calling ) من أي نقطة من البرنامج بمجرد ذكر اسمها  لكي يتم تنفيذها عند تلك النقطة ...

لذا فإن الدوال "Methods" في ال #C  هي محور حديثنا في هذا الدرس : 

 فالمبرمج إما أن يقوم بكتابة الـmethod  بنفسه عندها تسمى  (user-defined method),  أو أن يقوم باستخدام دوال معرفة في نفس اللغة( build in )   و كل ما عليه هو استدعاءها عندما يحتاج إليها  ليستخدمها في برنامجه  ...و سنتعرف في درس اليوم إنشاء الله  كيف يمكننا إنشاء هذه ال user-defined method  ومن ثم استدعائها في البرنامج..

و سأستكمل الحديث باعتبار أن القارئ الكريم لديه خبرة ولو قليلة للتعامل مع  #C  ...لنلق الآن نظرة على الصورة العامة لكتابة أي  method في #C :

access_ Modifier   return-value-type   Method-Name( parameter-list )
{
            declarations and statements
}

السطر الأول من تعريف الـ method  يسمى بال method header  ويحتوي على كل من :

access modifier :.

method-name : اسم الدالة التي نريد تعريفها ,  وقواعد كتابة الاسم هنا يتبع  نفس شروط كتابة أسماء المتغيرات وطبعا سيكون الاسم اختياري   .

return-value-type : نوع النتيجة التي ستعود بها الدالة والدالة إذا كانت تعود بقيمة فإنها لا تعود بأكثر من قيمة واحدة ,,, مثلا إذا كانت الدالة تعود بقيمة integer  فإننا سنكتب في هذه الخانة int ,وهكذا. أما في حالة عندما لا تعود الدالة بقيمة فإننا نكتب هنا void   .

parameter-list : هي القيم التي نقوم بإرسالها للدالة ,,,,,,,,,,وستتعرف عليها أكثر عندما نشرح أنواع الدوال .

 أما بالنسبة للـ declarations and statements : فهي الأوامر التي تقوم هذه الدالة بتنفيذها .



والدوال في أي لغة لها أربع أنواع سأطرح كل نوع مع تطبيق  مثال عليه :

1-الدالة التي لا تعود بقيمة ولا تستقبل أي  "parameter": أي لا تستقبل أي قيمة......

 و المعنى سيتضح من خلال المثال :

 

 

وهنا الـ access Modifier  هي static  ...

وبما أن الدالة لا تعود بقيمة فسنكتب void  عند الـ return-value-type  ...

وبما أن الدالة لا تستقبل أي قيمة فسنكتب القوسين فارغة ...!

وهنا الدالة تؤدي وظيفة سهلة للغاية مجرد أنها تطبع الرسالة " !! FirstMethod was called  " فور مناداتها ..إذن لابد من مناداة الدالة " calling " حتى تطبع الرسالة .. لكن كيف يتم استدعاء أي دالة ؟؟

بمجرد ذكر اسم الدالة فقط    فإنه سيتم تنفيذها ....كالتالي:

 

والبرنامج كاملا :

                                

 

 

 

 

 

 

 

 

لاحظ في البرنامج أننا قمنا في السطر 6 بإنشاء الدالة FirstMethod   واستدعائها في السطر 14  من  داخل الـ Main  حيث أن نقطة بداية البرنامج  هي من بعد ال Main  مباشرة ....

/*   ضع في اعتبارك أنه لا معنى من إنشاء دالة دون استدعائها  */...



2- الدالة التي تستقبل قيمة "parameter "  ولكنها لا تعود بقيمة   :

والمثال التالي يوضح الفكرة في البداية لننشئ الدالة كالتالي :

 

 

 

 الدالة هنا تستقبل قيمة parameter  إذن سنكتب بين القوسين اسم أي متغير يستقبل هذه القيمة التي ستدخل للدالة وطبعا سنكتب نوع لهذا المتغير  ونوعه بلا شك سيكون من نفس نوع القيمة المراد تمريرها للدالة والتي سيحتفظ بها المتغير. وكما هو واضح فإن الدالة تستقبل القيمة المخزنة في  x ثم تحسب نتيجة ضربها مع العدد 10 وتخزن النتيجة مرة أخرى في x ومن ثم تطبع النتيجة ..

فقط تبقّى مناداة الدالة حتى تنفذ عملها لكن يبدو أننا هنا لا بد و أن نرسل قيمة لهذه الدالة لكي تقوم  بعملها وطبعا القيمة التي سنرسلها ستكون من النوع integer ....

 

بمجرد بدء البرنامج في التنفيذ "كما ذكرت نقطة البداية هي من عند الـ Main " فإنه بمجرد ما يواجه المترجم الـ"compiler " الجملة ;(5) SecondMethod  فإنه يبحث عن الدالة التي تحمل هذا الاسم ويمرر لها القيمة الموجودة بين القوسين وهي 5 ,,,,يدخل العدد 5 إلى الدالة ليحل محل المتغير x ,ويتم إجراء العملية الحسابية ويتم طباعة النتيجة على الشاشة ..

و بما أن الدوال يمكن مناداتها أكثر من مرة داخل البرنامج ,,,إذن جرب أن تكتب جملة الاستدعاء التالية :

 

فهنا قمنا بمناداة نفس الدالة SecondMethod  ولكن مع قيمة أخرى 6 ستتكرر نفس العملية السابقة ولكن مع تغير الparameter  وبالتالي ستتغير النتيجة :

البرنامج كاملا :

                                    

 

 

 

 

 

 

 

 

وستكون المخرجات كالتالي :

 

بحيث أن السطر الأول في المخرجات هو نتيجة مناداة الدالة المرة الأولى في السطر 15, والسطر الثاني نتيجة مناداتها المرة الثانية في السطر 16.



أما النوعين الأخيرة من الدوال تابعوها بالدرس القادم       والسلام عليكم 



المزيد من المواضيع

Regular Expression --2
Regular Expression --1
مدخل إلى البرمجة غرضيّة التوجّه في السي شارب
ربط الفلاش بالــ #C
الدوال --2--#Methods in c
السيطرة على الأخطاء Exception Handling
المؤشرات في سي شارب
التحويل العلني- Explicit Conversion
تحويل الأنواع - التحويل الضمني
المتغيرات - Variables
أنواع البيانات – Data Types
::البرنامج الأول في C#::
مقدمة عن #C
::نقاط مهمة في C#::
فتح ملفات الملتيميديا في برنامجك !!
التعامل مع الملفات File Stream

1

 

الاقسام الرئيسية

دروس للمبتدئين

--

دروس في أنظمة التشغيل

--

دروس في الانترنت

--

دروس في لغات البرمجة

--

دروس في برمجة المواقع

--

دروس في الأوفيس

--

دروس في الرسوم و التصميم

--

دروس في قواعد البيانات

--

دروس في الألعاب والبرامج

--

دروس في المكونات الصلبة

--

دروس في الشبكات

--

دروس في أمن المعلومات

--

دروس في الذكاء الاصطناعي

--

القائمة البريدية

  فضائح | ماسنجر | تداول | الحياة الزوجية | عجائب وغرائب| دروس تعليمية | عالم حواء | فضائح الفن | ستار اكاديمي | نكت | برامج | صور | | شات سعودي | شات عربي | ماسينجر | مسجات | دليل مواقع | دليلك | مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية | دردشة خليجية | دردشة سعودية | دردشة عربية | شات صوتي | دردشة صوتية | دردشة كويتية | دردشة اماراتية | دردشة عمانية | دردشة قطرية | دردشة بحرينية | دردشة عراقية | دردشة يمنية | سكس | طريق الاسلام, انا مسلم , طريق الهدايه , مسلمون , منوعات اسلاميه | اسلاميات , برامج اسلامية , منوعات اسلامية | جنس | الاسرة المسلمة , الاسرة العربية , اسرتي , عائلتي | برامج الاسره , نصائح معلومات , اسرة عربية سعودية خليجية | دروس تعليمية , مكتبة الدروس التعليمية | شروح برامج , شرح برامج , دورات تعليميه | طب وصحه - المركز الطبي | طبيبك على الانترنت , معلومات طبية , معلومات صحيه

Roro44.com xml :                            

شات سعودي | شات عربي | شات خليجي | العاب | دردشات | العاب بنات

 |  اشهر موقعك | احصائيات الموقع | اسعار الاعلانات |  لمراسلة الإدارة  |

:: ©2007-2003 www.roro44.com All rights reserved ::