بسم الله الرحمن الرحيم
Advanced Visual Basic 2005/2008
التعرف على ClassLiberary
تحدثنا فى الماضى عن Classes بصورة سريعة وكذلك عن Namespaces وأصبحت هذة المصطلحات مألوفة لدينا وذكرنا أن Namespace ما هو إلا مجمع كبير لمجموعة من Classes مقسمة طبقا لنوعية كل Class الفورم و الأزرار والقوائم Dataset و........الخ فى الدوتنت هى فى الحقيقة Classes ولكنها تحتوى على أكواد تقوم بتحديد وظيفة كل Class إذن Namespace هو فى حقيقتة كالتالى
ولإثبات أن الفورم و الأزرار والقوائم Dataset و........الخ هى فى حقيقتها Classes سنقوم بعمل التجربة التالية
1-قم بفتح مشروع جديد ولكن احذر سيكون نوع المشروع هذة المرة هو ClassLibrary وليس Windows Application
-كليك يمين على المشروع فى Solution Explorer ثم اختر AddRefrence
من نافذة الإختيارات التى تظهر لك الان قم بإضافة هذا References التالية
System.Windows.Forms
و
System.Drawing
عندما أقوم بالعمل مع Classes فإننى غالبا ما أقوم بوضعها تحت Namespace كالتالى
وتستطيعون تغيير الاسم من Class1 إلى أى شىء تريدونة
3-سنقوم باستدعاء Form وذلك بكتابة
Imports System.Windows.Forms.Form
ولن تستطيع استدعاؤة طالما أنك لم تضف Reference الذى يتبعة وهو الذى أضفناة فى Reference منذ قليل الذى هو
System.Windows.Forms
إذن تتضح الان فائدة إضافة هذا Reference
ثم نقوم باستخدام الخاصية Inheritance وهذة الخاصية معناها الوراثية ولكن ما علاقة الوراثة بما نحن فية
-هى خاصية يتم تقسيم العناصر فيها على أساس خصائص هذة العناصر بمعنى أننا لو لدينا مجموعة من الكرات ويوجد بها مثلا 5 كرة حمراء اللون
واثنتان زرقاء و3 خضراء فإننا نقوم بتقسيمها حسب خاصية اللون
ومعنى استخدامنا لخاصية Inheritance هنا أننا سنقوم بجعل الخصائص الوراثية لهذا الشىء الذى نقوم بإنشاؤة بنفس خواص شىء اخر
وسنضيف أيضا إلى خصائصة خصائص جديدة ولكى يتم ذلك سنكتب
Inherits
إذن سيرث من؟
إنة سيرث هذا
System.Windows.Forms.Form
رائع جدا سيصبح الكود كاملا لدينا كالتالى
ثم نقوم بإضافة بعض الأسطر القليلة
السطر الأول الإعلام بأننا سنقوم بإضافة شىء جديد وهو مربع نص
هذا الشىء الجديد خصائصة كالتالى
-هو مربع نص
-موجود على بعد 64 من الحافة اليسرى للفورم وعند النقطة 88 من الحافة العلوية
-مقاساتة 200 عرض و 20 ارتفاع
....الخ
نريد الان تجربة هذا المشروع
الخطوات هذة المرة لن تكون أيضا كما سبق
-إذهب إلى Toolbar ثم Build ثم قم بعمل Build للمشروع
-إذهب إلى Toolbar ثم Project ثم Project Propperties فى أسفل القائمة حسب اسم المشروع
-قم بتغيير نوع المشروع من ClassLiberary إلى WindowsApplication وذلك من خلال Application Type
-قم بتغيير Startup Object إلى الفورم الذى قمت بإنشائة ويمكنك الان الضغط على F5 لتجربة المشروع
قم بحفظ المشروع
نفترض الان أننا نريد حفظ هذا الفورم لنقوم باستخدامة فى مشروع أخر
-قم بحفظ الفورم بالطريقة التالية-لإعادة استخدام الفورم مرة أخرى فى مشروع اخر نتبع الطريقة التالية
ثم تقوم بالاستعراض عن المكان الذى قمت بحفظ الفورم فية
ويستحسن تغيير خاصية فى Copy to output Dierectory إلى Copy if newer
ندخل الان إلى نقطة أخرى
Inheritance
ذكرنا أن Inheritance معناها وراثة وهى بالنسبة لنا فى هذا المجال تعنى أننا سنقوم بأخذ الخواص الوراثية لأحد المكونات ونقوم باستخدامها لإنشاء الكائن الذى نريدة ويتم تصنيف الكائنات وراثيا طبقا لخاصية فى هذا الكائن وتشترك الكائنات الأخرى معة فى نفس الخاصية وليس معنى
ذلك أن كل الكائنات المشتركة فى أحد الخصائص الوراثية تكون متطابقةو لإيضاح ذلك
فى الصورة التى أمامنا توجد دوائر ومربعات وهى كائنات وكل كائن لة لون فإذا أردنا أن نقوم بتقسيم هذة الكائنات فإننا يمكن أن نقوم بتقسيمها إلى مجموعات طبقا للشكل الهندسى فيكون لدينا مجموعتان وراثيتان وهما مجموعة الدوائر ومجموعة المربعات إذن الخاصية الوراثية التى اعتمدنا عليها هى الشكل الهندسى وفى هذة الحالة فإن إسم الكائن يكون كالتالى
(الخاصية الوراثية.إسم الكائن)
مربع.أخضر
مربع.أحمر
.....الخ
وكذلك
دائرة.أحمر
دائرة.أزرق
وإذا أردنا أن نقوم بتقسيمها طبقا لخاصية أخرى فسيتم استخدام اللون كخاصية نعتمد عليها فى التقسيم وفى هذة الحالة سيتم تعريف الكائنات كالتالى
(الخاصية الوراثية.إسم الكائن)
أحمر.دائرة
أحمر.مربع
أخضر.دائرة
لكى نستطيع أن نفهم الموضوع بصورة أوضح سنقوم بتنفيذ المثال التالى
1-قم بإنشاء مشروع جديد نوعة ConsoleApplication
2-المشروعات من هذا النوع تحتوى على Module سنقوم بكتابة الكود التالى داخل Module
من خلال الكود يمكن ان نتبين أننا قمنا بعمل Inherits ل ClassB من A وكذلك من B إلى C
يمكن تجربة البرنامج من خلال F5 أو تشغيلة من Commend Prompt عن طريق CMD
هذا المثال يوضح Inheritance بأبسط صورها
FormClass
تدريب على ما سبق
سنقوم الان بتنفيذ مشروع اخر شبية بالمشروع السابق ولكن بصورة أكثر اتساعا مع مزيد من المكونات وكذلك الوظائف
1-قم بفتح مشروع جديد ClassLibrary
2-قم بإضافة References التالى
System.Windows.Forms
3-قم بكتابة الكود التالى وتنفيذ المشروع بنفس الطريقة التى اتبعناها فى فى المثال الأول
4- يمكنكم ملاحظة أننا قمنا بإضافة أحداث Events واقصد بذلك حدث الزر Button1
أرجوا النظر إلى ما تم فعلة فى هذا المثال والنظر جيدا إلى الأكواد ومحاولة فهمها فهى بسيطة للغاية
لا تحرمونا من الردوووووود تحياتي الذيب
--------------------------------------------------------------------------------
منقوووووووول