تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الدرس 4- طرق إستخدام ال void و ومجالاتها
#1
كاتب الموضوع : Tarek Aldwire

الدرس 4: مهارات إستخدام ال void ومجالاتها



السلام عليكم ورحمة الله وبركاته
_________________________

الان سوف نبدأ بحديث هام جدا وهو الكلمة المحجوزة void...
______________________________________________
أولا قم بإنشاء مشروع جديد وأختر Console Application
(( ال Console Application هو تطبيق يستخدم إلى القيام بمهمة معينة ((مثلا حذف بعض الملفات))
ومن ثم الإغلاق))

والان سوف تجد أنه كتب تلقائيا ما يلي:

كود :
[color=#000000][COLOR=#0000bb]using System[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Collections[/color][color=#007700].[/color][color=#0000bb]Generic[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Linq[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700];

[/COLOR][COLOR=#0000bb]namespace ConsoleApplication1
[/COLOR][COLOR=#007700]{
    class [/COLOR][COLOR=#0000bb]Program
    [/COLOR][COLOR=#007700]{
        static [/COLOR][color=#0000bb]void Main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][COLOR=#007700])
        {
        }
    }
}  
[/COLOR][color=#0000bb][/color][/COLOR]

ولم يعد هناك داعي لكي أشرح ما كتب فأصبحنا نعرف ذلك ولكن ماهو الأمر Main الذي كتب؟؟؟
إن كل ما نكتب في الأمر Main سوف ينفذ عند بدء البرنامج مثلا:

كود :
[color=#000000][COLOR=#0000bb]        [/color][color=#007700]static [/color][color=#0000bb]void Main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][COLOR=#007700])
        {
            [/COLOR][color=#0000bb]Console[/color][color=#007700].[/color][color=#0000bb]Write[/color][color=#007700]([/color][color=#dd0000]"mytest"[/color][COLOR=#007700]);
        }  
[/COLOR][color=#0000bb][/color][/COLOR]

وجرب سوف تلاحظ أنه ظهرت ال Console وكتبت mytest ثم أغلقت بسرعة
السبب: أن ال Console تغلق فور ما تنتهي مهمتها ((عندما يموت كل ال Theards الحية الأمامية سوف نشرح ذلك في ما بعد ))

الان سوف نقوم بعمل أمر خاص بنا ولكون أسمه Myvoid ولكن قبل ذلك عليي تعريفك بمجالات رؤية بعض الكلمات المحجوزة التالية:
public: تظهر إلى كل محتوى المشروع الحالي مع إمكانية الظهور إلى خارج البرنامج ولذلك تستخدم في ال Class Library (سوف نتطرق لشرحها في ما بعد ) لكي يتمكن المستخدم من رؤية الأوامر التي تحويها

private: يمكن رؤيتها من خلال البرنامج الحالي فقط!!

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

أولا أكتب ما يلي (( أنتبه: يجب أن يكون الأمر ينتمي إلى Class وليس ل NameSpace))
فمكان الكتابة الان سوف يكون هنا :

كود :
[COLOR=#000000][COLOR=#0000bb]namespace ConsoleApplication1
[/COLOR][COLOR=#007700]{
    class [/COLOR][COLOR=#0000bb]Program
    [/COLOR][COLOR=#007700]{
[/COLOR][COLOR=#0000bb]مثلا هنا
        [/COLOR][color=#007700]static [/color][color=#0000bb]void Main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][COLOR=#007700])
        {
[/COLOR][COLOR=#0000bb]هنا لا لإننا داخل الأمر Main
        [/COLOR][COLOR=#007700]}
[/COLOR][COLOR=#0000bb]هنا ممكن
    [/COLOR][COLOR=#007700]}
}  
[/COLOR][color=#0000bb][/color][/COLOR]

الان أكتب

كود :
[color=#000000][COLOR=#0000bb][/color][color=#007700]static [/color][color=#0000bb]void Myvoid[/color][COLOR=#007700]()
{
[/COLOR][color=#0000bb]Console[/color][color=#007700].[/color][color=#0000bb]Write[/color][color=#007700]([/color][color=#dd0000]"My Void Is Working"[/color][COLOR=#007700]);
{  
[/COLOR][color=#0000bb][/color][/COLOR]

وعلى هذا النمط تكتب الأوامر الخاصة بك
والان نكتب في الأمر Main

كود :
[color=#000000][COLOR=#0000bb]Myvoid[/color][COLOR=#007700]();  
[/COLOR][color=#0000bb][/color][/COLOR]

فيصبح الكود:
(( أنتبه لن يتم ظهور الأمر Myvoid إذا لم يكن من نوع shared لذلك إستخدمنا static))

كود :
[color=#000000][COLOR=#0000bb]using System[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Collections[/color][color=#007700].[/color][color=#0000bb]Generic[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Linq[/color][COLOR=#007700];
[/COLOR][color=#0000bb]using System[/color][color=#007700].[/color][color=#0000bb]Text[/color][COLOR=#007700];

[/COLOR][COLOR=#0000bb]namespace ConsoleApplication1
[/COLOR][COLOR=#007700]{
    class [/COLOR][COLOR=#0000bb]Program
    [/COLOR][COLOR=#007700]{
        static [/COLOR][color=#0000bb]void Main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][COLOR=#007700])
        {
            [/COLOR][color=#0000bb]Myvoid[/color][COLOR=#007700]();    
        }
        static [/COLOR][color=#0000bb]void Myvoid[/color][COLOR=#007700]()
        {
            [/COLOR][color=#0000bb]Console[/color][color=#007700].[/color][color=#0000bb]Write[/color][color=#007700]([/color][color=#dd0000]"My Void Working"[/color][COLOR=#007700]);
        }
    }
}  
[/COLOR][color=#0000bb][/color][/COLOR]


جرب ولاحظ
النتيجة أن البرنامج ظهر وكتب الرسالة ( My Void Working) ثم أغلق
ولكن كيف نعطي args للأمر الذي قمنا بصنعه؟؟؟
مثلا أنا أريد أمر أرسل له رقمين يعود لي بناتج جمعهما
سوف يكون كالتالي:

كود :
[color=#000000][COLOR=#0000bb]        [/color][color=#007700]static [/color][color=#0000bb]void Main[/color][color=#007700]([/color][color=#0000bb]string[/color][color=#007700][] [/color][color=#0000bb]args[/color][COLOR=#007700])
        {
            [/COLOR][color=#0000bb]double x [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];
            [/COLOR][color=#0000bb]Myvoid[/color][color=#007700]([/color][color=#0000bb]5[/color][color=#007700], [/color][color=#0000bb]5[/color][color=#007700],[/color][color=#0000bb]ref x[/color][COLOR=#007700]);
        }
        static [/COLOR][color=#0000bb]void Myvoid[/color][color=#007700]([/color][color=#0000bb]double firstnumber[/color][color=#007700],[/color][color=#0000bb]double secnumber[/color][color=#007700],[/color][color=#0000bb]ref double Total[/color][COLOR=#007700])
        {
            [/COLOR][color=#0000bb]Total [/color][color=#007700]= [/color][color=#0000bb]firstnumber [/color][color=#007700]+ [/color][color=#0000bb]secnumber[/color][COLOR=#007700];
        }  
[/COLOR][color=#0000bb][/color][/COLOR]

حيث عندما قمنا باستدعاء الأمر Myvoid طلب ال firstnumber وال lastnumber ومن ثم ال Total
فما هذا ال Total ???
هو الذي من خلاله سوف يعيد ناتج الجمع عن طريق الكلمة المحجوزة ref
فمثلا لو أردنا أن نرجع قيمة نصية string يكون الكود كالتالي:
ref string nameofvar

(( ملاحظة يمكنك إستخدام الكلمة المحجوزة out بدلا من ref ))

إلى اللقاء في الدرس القادم إن شاء الله...
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الدرس 22- دوال sql server RaggiTech 0 1,049 18-10-12, 04:11 PM
آخر رد: RaggiTech
  الدرس 21- Stored Procedures RaggiTech 0 929 18-10-12, 04:09 PM
آخر رد: RaggiTech
  الدرس 20- تنفيذ جمل الإستعلام insert-update-delete RaggiTech 2 969 18-10-12, 04:08 PM
آخر رد: RaggiTech
  الدرس 19- ربط قاعدة بيانات accessمع c#-vb.net وتنفيذ جمل إستعلام - الوضع المتصل RaggiTech 0 1,317 18-10-12, 03:41 PM
آخر رد: RaggiTech
  الدرس 18- ربط قاعدة بيانات sql مع c#-vb.net وتنفيذ جمل إستعلام - الوضع المتصل RaggiTech 0 2,470 18-10-12, 03:29 PM
آخر رد: RaggiTech
  الدرس 17- مقدمة إلى قواعد البيانات RaggiTech 0 738 18-10-12, 03:21 PM
آخر رد: RaggiTech
  الدرس 16- تصميم الأدوات الخاصة RaggiTech 0 702 18-10-12, 03:20 PM
آخر رد: RaggiTech
  الدرس 15- البداية مع gdi+ RaggiTech 1 752 18-10-12, 03:16 PM
آخر رد: RaggiTech
  الدرس 14- شرح تقنية ال wpf مع بعض الأمثلة RaggiTech 4 1,102 18-10-12, 03:12 PM
آخر رد: RaggiTech
  الدرس 13- Multi-Threading RaggiTech 0 772 18-10-12, 03:03 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم