هل ستتابع الدورة وسنتساعد على فهم البرمجة في السي شارب

  • نعم

    الأصوات: 27 96.4%
  • لا

    الأصوات: 1 3.6%

  • مجموع المصوتين
    28
::وظيفة ::
يوجد في السي شارب آليات للوصول للإجرائات أو الكائنات بين الكلاسات نستخدم فيها كلمات محجوزة
والتي هي
static
public , private , protected ,internal

الوظيفة إبحث عن طرق و فروق إستخدامها مع إعطاء مثال بسيط
 

شاهدنا في التمرين السابق كيف أضفنا قيم للحقول عن طريق الإجراء info
يوجد طريقة أخرى و هي عن طريق إنشاء مشيد أو تسمى ( البانية)
فائدته تحجز للكائن المستدعى أو المشتق عن طريق كلمة new مكانا في الذاكرة و تساعد على تمرير بيانات له عند إستدعائه
طريقة الإعلان عنه
يكتب ضمن الكلاس الأم
ويعلن عنه
public class_name
نعدل على مثالنا السابق
39960348211_e585aef6d3_b.jpg



لاحظ
عندما أنشئنا المشيد لقد سطر بالخط الأحمر على أمر الاشتقاق لأننا لم نمرر قيم

26087854488_a2460035f0_b.jpg


سنضيف القيم داخل الأقواس
25089359007_a06570ed4b_b.jpg


و هكذا مررنا قيم الحقول عبر المشيد عند إشتقائق كائن جديد
 
ال get and set
نوجد في السي شارب طريقة أسهل للحصول على قيم للحقول لمثالنا السابق​
وهي عن طريق ال get التي وظيفتها قرائة قيمة المتغير عند استدعائه
ال set تقوم بإعطاء قيمة للمتغير
كيفية إستخدامها
كالتالي :
25111722467_47b6cedc97_b.jpg

get تقوم بإستدعاء قيمة المتغير
set تقوم بإعطاء قيمة للمتغير

كيف نقوم بإعطاء قيمة للمتغير و استدعائه عن طريق الإجرائات التي قمنا بكتابتها والتي يمكن أن نسميها خصائص
25111953897_e1eea34596_b.jpg


لقد قمنا بإعطاء قيم للحقول عن طريق set و ذلك بإستدعاء الإجراء الخاص بالحقل و إعطائه قيمة value

لنقوم بطباعة المعلومات نستخدم الأمر المعتاد
FDfIYVa.jpg
 
سنتابع التعديل على برنامجنا السابق و سنتعلم الوراثة
ماذا أقصد بالوراثة​
كما رأينا في مثالنا السابق نتعامل مع الأشخاص و نجلب معلومات العمر الوزن لون البشرة
إذا أردنا أن نتوسع في برنامجنا السابق و نضيف فئتين جديدتين إلى البرنامج
الفئة الأولى نسميها شخص متعلم و تحتوي على حقول التالية
الاسم :
العمر:
الوزن :
لون اليشرة :
الدرجة العلمية :

الفئة الثانية نسميها شخص عامل و تحتوي على الحقول التالية
الاسم :
العمر :
الوزن :
لون اليشرة :
العمل :

لاحظ الآن يوجد تشابه بين الفئة الأولى و الفئة الثانية
الإسم .. العمر ... الوزن ... لون البشرة ..

الجديد في الفئتين :
الدرجة العلمية .... العمل

الآن حان وقت الوراثة وذلك نجعل جميع الفئات الجديدة تستطيع إستخدام جميع الإجرائات و الخصائص في الفئة الأم persone
و ذلك بطريقة بسيطة وسهلة
CLASS LERNER : PERSONE
بوضع نقطتان أما اسم الكلاس الوارث ثم اسم الكلاس الذي سنرس منه

*** سنقوم بزيادة حقل جديد في برنامجنا و هو الاسم بعتباره مشترك بين الفئات
لاحظ التالي

25145393467_3b82c3d4fc_b.jpg


الآن وظيفتك
اعطي قيم للعنصر المشتق lern1 عبر إستدعاء خصائصه و أعد طباعتها
اعطي قيم للعنصر المشتق worker1عبر إستدعاء خصائصه و أعد طباعتها
 
كيف نجعل البرمجة الكأنية والوراثة في برنامجنا أكثر واقعية و أقرب للواقع
كما شاهدنا في برنامجنا السابق يوجد لدينا كلاس اسمه persone و اعتبرناه الكلاس الأم الذي ترث منه الكلاسات الأخرى إذا أردنا منع اشتقاق عنصر من الكلاس الأم لانه كلاس مجرد
نستخدم الكلمة
Abstract قبل الكلمة class
39308548144_0b7e0acf73_b.jpg


حاول أن تشتق من الفئة persone ستلاحظ أنها سطرت تحتها بالأحمر و حدث خطأ برمجي
لان abstract تسمح للكلاسات الأخرى بالوراثة منها لكنها تمنع الإشتقاق

----------------------------------------------------------
 
الوظائف الوهمية و استخدام new and override

لنفرض أننا نكتب برنامج عن الكائن الحي و خصائصه ولدينا دالة (( وظيفة )) تقوم بإظهار معلومات عن الكائن الحي أنه يأكل و يشرب و يتنفس الإكسجين
و أنشئنا كلاس ثاني أسميناه human و نريد إستخدام نفس المعلومات في الموجودة في الكائن الحي و نضيف عليها أنه يستطيع العمل و بناء المجتمع
هنا تأتي دور إستخدام override
سوف نقوم بإنشاء كلاس نسميه كائن حي و يحتوي على وظيفة تحوي خصائص الكائن الحي ((كمثال ))
26198876548_aa269f464d_b.jpg

الآن ننشأ كلاس human ونورث من الكلاس الأم organism
و نستخدم override
25200601767_cb1cfd3448_b.jpg



لاحظ الآن

28295781759_bcc169128d_b.jpg


سننشئ كلاس جديد للحيوانات و سنستعمل الكلمة new و سنشتق من كل فئى كائن و نستدعي الوظيفة info

ليصبح برنامجنا كالتالي
28295835149_1f1c001cfe_b.jpg




ماذا لاحظت مالفرق بين إستخدام new و override
مالفائدة من إستخدام override
 
دروسنا القادمة ستكون عن الواجهات ثم المفوضات ثم الأحداث
بعدها سندخل في برمجة تطبيقات وندوز
-------------------------------------------------------
سنتابع تكملة الدروس بعد 3 أيام إن شاء الله لأسباب صحية
 

Interfaces

كما لاحظنا سابقا أننا نستطيع أن نورث الكلاسات من بعضها لكن لا نستطعيع أن نجعل الكلاس الواحد يرث أكثر من كلاس و لستخدام ذلك نستخدم ال
Interfaces حيث أنه يستطيع الكلاس أن يرث من أكثر من واجهة
الواجهات :

طريقة الإعلان عن واجهة باستخدام الكلامة
Interfaces ثم اسم الواجهة
يتعارف برمجيا بإضافة حرف I الكبير قبل اسم الواجهة للدلالة عنها


يمكننا إعتبارها كلاس مجرد لا يمكن إشتقاق كائن منها
تحتوي على أسماء الوظائف والخصائص التي ستحتاجها الكلاسات التي سترث من الفئة
أنشأنا واجهة أسميناها info ستحوي على خصائص الكلاس الذي سيرث منه و سنسميه student
26325151508_7f640104cd_b.jpg


الآن سننشأ كلاس جديد يرث من الفئة اسمه student
40164767822_64120446bc_b.jpg

أنشئنا متغيرات لتستقبل قيم الخصائص عند إعادة برمجتها في الفئة student
لاحظ كيف إستدعينا الخصائص في الواجهة لإعادة برمجتها
يجب أن تكون من نفس نوع المتغير الموجود في الكلاس
كما شاهدت
string name
إستدعينا الخاصية الأولى في الواجهة
string Iinfo.name

عبر كتابة إسم الواجهة ثم نقطة فيجلب لنا جميع الخصائص الموجودة في الواجهة

الآن وظيفتك الإشتقاق و إعطاء بيانات للكائن المشتق و طباعتها


 
المفوضات (delegate)
يمكننا إعتباره حاوية للدوال أو جامع
سنرى ذلك خلال هذا الشرح
مثالنا بسيط سيعرفنا فقط عن طريقة الإعلان عن المفوض و طريقة إستخدامه
طبعا له استخدامات أخرى سنراها تباعا إن شاء الله

سوف ننشأ برنامج يقوم بعملية الجمع و القسمة و الضرب
ننشأ كلاس جديد calc
39509817944_06fef970f4_b.jpg


الآن سنكتب دوال الجمع و القسمة و الضرب
39509848234_e214d01aba_b.jpg


ثم
26348723098_7468ab05bd_b.jpg

كيف أخبرنا الديلغيت أنه يضيف الداول
عن طريق + التي قبل ال يساوي





 
أعذروني عن تغيبي عن الدورة بسبب المرض
ولكم فائق حبي
 
استخدام آخر للمفوضات

يمكننا أن نعتبر المفوض مراقب برمجي كما هوا حاوية للدوال
حيث أنه يقوم بتنفيذ الإجراءات عند إستدعائه
مثال عن ذلك برنامج يقوم بإخبار المستخدم بحالة الحروف التي يكتبها

39620234304_2ccb6545d0_b.jpg
1- إشتقينا كائن جديد من المفوض و أسندنا له الوظيفة مباشرة من الكلاس عبر إستدعاء الكلاس و الوظيفة بسبب أن حالة الوظيفة static لا تحتاج إلى كائن مشتق لاستدعائها
2-أسندنا للمفوض أن يقوم بمراقبة حالة المتغير test الذي يدخله المستخدم
 
بقي لدينا الأحداث سنتناولها لاحقا في برمجة الوندوز أبلكيشن
وسنبدأ إن شاء الله من الأسبوع المقبل ببرمجة التطبيقات
 

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي

شكرا على مرورك الكريم أخي أبو عائشه
وبارك الله فيك
 
السلام عليكم
من اليوم سنبدأ بتعلم برمجة تطبيقات وندوز عن طريق السي شارب​
الدرس الأول :

نختار من النافذة خيار Windows forms Appliction ثم نسمي اسم البرنامج المنشئ ثم نضغط على ok

25579808637_bd54d46cce_b.jpg

ستظهر لنا النافذة التالية التي سنقوم بالبرمجة فيها
وظيفتك الأولى استكشف عناصر التول بوكس الموجودة على اليسار إن لم تظهر من قائمة view إختر toolbox

25579983027_d0e5ca67c4_b.jpg


أقصد بساحة الرسم مكان الذي سنضيف فيه العناصر اللازمة في مشروعك من ال toolbox
برنامجنا الأول المعتاد رسالة الترحيب

من toolbox إختر Button
بالضغط المطول عليه مع السحب و الإفلات في ساحة الرسم
إختر الزر ثم إضغط f4 من الكيبورد سيظهر لنا التالي
26580175398_0dceac598f_b.jpg


لاحظ هذه القائمة
39554998385_a851ac075f_b.jpg

هذه القائمة تحوي على خصائص العنصر من اسمه و شكله و شكل الخط و العديد من الخصائص التي سنكتشفها تباعا عند إستخدامها أهم خاصيتين هما
اسم العنصر البرمجي الذي سنسنتخدمه عند إستدعائه
والنص الذي سيظهر للمستخدم

25580151287_5f5dbc9fbe_b.jpg


38640825780_b94498e198_b.jpg


العادة البرمجية في الاسم البرمجي أن يكتب الاسم بما يدل على عمله
مثالنا الآن عندما يضغط المستخدم على الزر تظهر رسالة ترحيب
سنجعل الاسم البرمجي للزر

BttnMasseg

وسنجعل النص الظاهر للمستخدم
hello

الآن كيف نبرمج الزر و ذلك بالضغط عليه مرتان بالفأرة ستظهر لنا نافذة لكتابة النص البرمجي

25580226877_4d0fff6153_b.jpg


سنكتب الكود البرمجي التالي الذي سيظهر لنا رسالة الترحيب في السلسلة التعليمة لل سي شارب
26580384558_8ec5b6c7b6_b.jpg

نفذ الآن بالضغط على f5 و شاهد و استمتع بساطة البرمجة
نتابع إن شاء الله في الدرس القادم
وظيفتك استكشف الأدوات الموجودة في التولبوكس



 
برنامجنا الثاني :
سننشئ فورم نضع فيه
1- Lable
2-Textbox: سنغير الإسم البرمجي إلى TxtPass و سنضع في محتواه نص يطلب إدخال كلمة المرور
3- Button : سنغير الإسم البرمجي إلى BttnLogoIn و سنجعل النص الظاهر للمستخدم Enter
4- FORM حديدية سنسميها my prog
ماذا سيفعل البرنامج :
على المستخدم كتابة كلمة زيزووم في مربع النص للدخول و سيفتح لنا (form (my prog
إن كتب كلمة مخالفة سيقوم بإظهار رسالة خطأ .

38643228220_e6ebce8cf2_b.jpg


ننشئ مربع نص و زر جديد
39557680955_34e8d88463_b.jpg

ننشئ الآن فورم جديد و نسميه my prog وزلك من solution Explorer زر يمين على اسم المشروع add >>
New Project \
39557849915_7565fec65b_b.jpg



نختار كما في الصورة
26583139418_6836ea8b01_b.jpg


الآن شاهد ماذا اضيف إلى حاوية المشروع
25582950377_13e6467a9b_b.jpg


عملنا الرئيسي هو في الزر الذي أنشأناه في الفورم الأولى نضغط عليه مرتين لنكتب الكود البرمجي
39558051015_69449b8176_b.jpg



لاحظ الشكل الجديد للرسالة عند كتابة كلمة المرور الصحيحة

1- محتوى الرسالة
2- عنوان الرسالة
3-الأزرار التي تحويها الرسالة
4- صورة الرسالة


الوظيفة :
إجعل مكان كتابة النص في التيكس بوكس على شكل نجوم أثناء الكتابة (( و ذلك من خصائصه ))
 
درسنا اليم آلة حاسبة بسيطة ستطورها أنت سنتعلم الأساسيات و وظيفتك التطوير

سنقوم بعمل آلة حاسبة تقوم بالجمع فقط و أنت ستقوم بإضافة العمليات الآخرى
لنفكر برمجيا :

نقوم بوضع الأدوات اللازمة للفورم و إعادة تسميتها
نضع:
مربع نصي : نعطيه الإسم البرمجي :TxtCalc
زر 1: نعطيه الاسم البرمجي :BttSum النص الظاهر للمستخدم : +
زر 2: نعطيه الاسم البرمجي:BttCalculet النص الظاهر للمستخدم: =

يصبح شكل الفورم :
39574356965_a03d98deed_b.jpg



كيف نبدأ بكتابة أكواد البرمجة :

المستخدم سوف يقوم بكتابة رقم ببداية الأمر في مربع النص ثم يقوم بالضغط على + إذا أنا بحاجة ل متغير رقمي يحفظ هذه القيمة و نحن بحاجة إلى كود يفرغ محتوى المربع حتى يتاح للمستخدم كتابة الرقم الثاني
المستخدم قام بكتابة الرقم الثاني الآن سيضغط على = مالذي نحتاجه هنا ؟؟
نحتاج إلى
متغير رقمي يقوم بحفظ الرقم الثاني و بحاجة إلى متغير يقوم بجمع الرقمين ويقوم بإظهاره
39574539025_2754bf4bde_b.jpg


وظيفتك
طور البرنامج و إجعله يقوم بأعمال حسابية آخرى الضرب و الطرح و القسمة
 
اليوم سنضيف فورم جديد بعنوان محرر النصوص البسيط
و سنتعلم إستخدام بعض ميزات ال Check box
26643126428_559b9d1e98_b.jpg



سنقوم بإضافة على الفورم الأساسي اثنين من chek box
39618889635_861e274264_b.jpg


كما نلاحظ في الصورة تم التعديل على اسماء ال شيك بوكس
إلى محرر النصوص ... آلة حاسبة

وتم تغير الاسم البرمجي لهم

محرر النصوص : C_B_editor
آلة حاسبة :C_B_C


ال chek box هي أداة كما تعلم تسمح بإختيار الخيارات التي ستنفذ بواسطة البرنامج و نحن سنبرمجها لتفتح فورم محرر النصوص أو ال آلة الحاسبة او الإثنين معا

عن طريق خاصية ال Checked

سنقوم باضافة فورم جديد سنسميه notepad
25643838037_36b0535df3_b.jpg



سنقوم بإضافة في الفورم Rich Text Box


40489115182_a782591c61_b.jpg




نعود للفورم الأساسي و سنقوم بالتعديل بشكل كامل على زر الدخول Enter

نضغط نقرتين و نكتب الأكواد التالية :
39804225864_d7c0b0811d_b.jpg


شرح ما سبق :
1-
وضعنا شرط إذا كان شيك بوكس الخاص بالآلة حاسبة مفعل و ذلك عن طريق كتابة اسمه البرمجي C_B_C ثم استدعاء خاصية Cheked و نقول له إذا كانت هذه الخاصية مفعلة أي تساوي القيمة true
25647836417_eb70a6a3b8_b.jpg

و كما نعلم إشار && تعني (و ) و هنا نقول للمترجم و كان حالة الشيك بوكس ل محرر النصوص غير مفعلة قم بالتالي

a- تحقق من كلمة المرور و هنا قلنا له إذا كانت كلمة المرور لا تساوي "زيزووم " أظهر رسالة خطأ ... و إذا كانت
b- غير ذلك أي تساوي زيزووم إفتح لنا فورم آلة الحاسبة فقط
-----------------------------------------------------------------

يتبع إن شاء الله .... بنفس المنشور
----------------------------------------------------------------
وظيفتك فسر باقي الأكواد البرمجية
 
التعديل الأخير:
نتابع ب محرر النصوص

بعد أن أضفنا الريتش بوكس و أعطيناه الاسم البرمجي R_Text

40489115182_a782591c61_b.jpg


اليوم سنتعلم كيف نفتح ملف نصي و يظهر في الريتش بوكس لذلك نحتاج أن نضيف open file Dialog

و ذلك من التول بوكس

25661427837_fc6de556a4_b.jpg


نضبف زر لفتح الملف النصي داخل الريتش بوكس

40489381172_3dc5db8740_b.jpg


بعد التعديل على اسمه البرمجي و النص الظاهر للمستخدم
نضغط مرتين على الزر و ندخل لنتكتب الكود البرمجي

39823436864_c96cd2ba47_b.jpg


نفذ الكود و إضغط على فتح لاحظ النافذة التي تظهر

40506228082_0680d61286_b.jpg





نلاحظ أنه لا يوجد فلتر للصيغ و ذلك سيسبب لنا مشاكل مع برنامجنا محرر النصوص إذا إختار المستخدم ملف غير نصي
لذلك نذهب إلى خصائص opdf الذي أضفناه و نضيف الفلتر الخاص بنا

25678416717_9d48de727c_b.jpg


لنضيف الفلتر : نضغط على filter

40506596992_bb4217177f_b.jpg


وظيفتك
إبحث على الإنترنت كيفية أستخدام

يجب عليك تسجيل الدخول أو التسجيل لمشاهدة الرابط المخفي


save File Dialog and rich Text Box

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