إدارة مجموعات الكائنات Managing Objects Groups

24 08 2008

لا يخفى على أي مبرمج اهميه مجموعات الكائنات عندما ترغب بالتعامل مع مجموعة كائنات من النوع ذاته فلا داعي لإنشاء 20 نسخه من ذات الكائن بل الحل بعمل Group والتي قد تكون مصفوفة Array في اغلب الاحوال .

كل من يدرس لغة برمجة او يستخدمها – مهما كان مبتدئا ومعلوماته ضئيلة – اعتقد انه يجب ان يكون ملما بالمصفوفات Arrays والتعامل معها ، ما يدور في هذه المقاله هو شيء مشابه لموضوع المصفوفات ولكن من الزاوية الاعلى ! ( كلام غريب أليس كذلك ! )

يوجد طريقتان رئيستان في VB.NET ( وكذلك #C على حد علمي ) لعمل مجموعة من الكائنات ، الأولى هي عمل مصفوفة Array والطريقة الثانية ( الاكثر مرونة ) هي عمل Collection للكائنات .

الطريقة الأولى : المصفوفات Arrays :

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

الطريقة الثانية : المجموعات Collections :

تمتاز هذه الطريقة بعدم الحاجة لأن يكون لديك عدد ثابت ومحدد من الكائنات ، وفي المقابل فأي Collection هي عبارة عن فئة Class لذلك فيجب علينا ان ننشيء كائنا جديدا من احد انواع الـ Collections حتى تستطيع اضافة العناصر والتعامل معها من خلالها .

أحد الميزات الرئيسية في استخدام الـ collections هو امكانيه اضافة وحذف أي عنصر من الـ Collection في وقت التنفيذ وهي بذلك تقدم مرونة كبيرة جدا نفتقدها في المصفوفات Arrays . الميزة في الـ Collections انه يمكن اعطاء كل عنصر Element في ال Collection مفتاح key معين يرمز إليه ويسهل الوصول اليه مباشرة بعيدا عن حفظ رقم الفهرس index الخاص به كما هو الحال مع المصفوفات Arrays .

الفئات الخاصة بالـ Collections توجد داخل فضاء الأسماء System.Collections ويمكن ان تحتوي كل collection منها على عناصر من انواع مختلفة ، واذا اردت ضمان ان يكون جميع العناصر من نواع واحد معين نحدده فالأفضل استخدام انواع الـ Collections الموجودة في فضاء الأسماء System.collections.Generics والتي ظهرت منذ الاصدار 2005 .





العناصر المشتركة shared Members في visual basic .net :

18 08 2008

العنصر الذي يصرح عنه بانه مشترك Shared في Visual Basic .Net ( او static في لغات الـ C ) يعتبر عنصرا مشتركا لكل الفئات التي تنشأ من نفس الفئة . كلام مكرر وغير مفهوم وكل الكتاب يكتبونه نفسه عند شرحهم وتناولهم لهذا الموضوع وتعت منه كثيرا وأعتقد انك انت عزيزي القارئ بدأت تكره كلمة Shared عندما تراها في أي كود لنفس السبب !! اليس هذا ما تريد قوله ؟ طيب لندخل معا على الموضوع من زاوية اخرى  :

أقرأ باقي الموضوع »





التعامل مع الاخطاء في البرمجة الكائنية : الفئة ExecutionCondition مثالاً

22 07 2008

يعد اسلوب البرمجة الكانئية افضل اسلوب برمجي تطبقه في معظم اللغات الحديثة والقوية وخصوصا لغات الدوت نت سواء كانت VB.Net او C# ، وعندما تطبق هذا الاسلوب فمن الاكيد بانك ستقوم ببناء فئات Classes وستحتوي بداخلها على اعضاء Members كـ Properties,Function,Subs وغيرها ، ثم تستخدم هذه الفئات في أي جزء رئيسي من الرنامج بإنشاء كائن جديد منها ثم اسناد القيم والخصائص إليه من خلال المشيد Constructor في حالة وجوده او من خلال الخصائص القابلة للكتابة Writable Properties او لاشيء من هذا !

لاحقا وبعد ان تكتب الاكواد داخل الأعضاء الخاصة بفئتك التي انشاتها للتو واللحظة ، فإنك قد تتساءل حول عملية قنص الاستثناءات Exceptions ، فماذا لو حدث استثناء معين او خطاء وقت التنفيذ في الكود ؟ هذا ما سنناقشه هنا .

أقرأ باقي الموضوع »