

كيف يمكن إزالة العلل والأخطاء وتصحيحها
![]()
يتضمن VB.NET عدة ادوات جديدة لإيجاد وتصحيح الأخطاء المألوفة سابقا في VB6 كـــ (Step Over , RunTime , Next , End , Break )و كان في VB6 اوامر إزالة العلل من بينها شريط ادوات Debug أما في VB.NET قتم تغيير ذلك إلى Autos , Command , Call Stack ....وهذه للمعلومية فقط ولن نستعلمها ولكن قد تجدها مفيده في البرامج المتطورة .. أما ما سنتكلم عنه هو اغلب ما يصادفنا في برامجنا وهو كالتالي !
هناك ثلاثة أنواع من الأخطاء الشائعة في VB.NET وهي ....
[1] اخطاء التركيب اللغوي Syntax errors
[2] اخطاء وقت التشغيل Runtime errors
[3] اخطاء منطقية Logic errors
سنتحدث الآن عن كل خطأ بشرح مبسط لنرى ما يسبب حدوثه ...... !!!
الخطأ الأول :
اخطاء التركيب اللغوي أو النحوي / وهي أخطاء برمجة تحدث نتيجة خطأ في صياغة كلمة أو خاصية مكتوبة بشكل غير صحيح كالتالي
Selsct case TeBox.Sel.index Csae 1 ' Case 2 Case 3 End select
طبعا الخطأ في هذه الكلمة Csae 1 كان المفروض أن تكون Case 1 وهكذا مع بقية الجمل البرمجية التي قد ننسى تكملتها
الخطأ الثاني :
اخطاء وقت التشغيل / وهي أخطاء تجعل البرنامج يتوقف بشكل غير متوقع خلال التنفيذ ... ويتم ذلك على سبيل المثال عندما تقوم بأستدعاء صورة من مكان ما في جهازك كخلفية للنماذج وبعدها مع الوقت تقوم بتغيير اسم المجلد الذي يحوي هذه الصورة .. وتنسى أن تحدث الكود للمسار الجديد عندها سيحدث توقف مفاجأ للبرنامج وقد لا تعلم ما سببه لأنك نسيت أنك قمت بتغيير مسار لكائن ما كان مبرمج في البرنامج ...
الخطأ الثالث :
اخطاء منطقية / وهي أخطاء بشرية من صنعنا كالمعادلات والجمل التكرارية الا منتهي والقيم والخاطئة ... مثال ذلك المعادلة التالية
If Age > 13 And Age < 20 Then MsgBox "You're Teenager" Else MsgBox "You're not Teenager" End If
هل يمكنك معرفة المشكلة مع بنية القرار هذه ؟؟؟
المراهق هو شخص عمره بين 13 و 19 سنة ولكن البنية المنطقية هنا تفشل في التعرف على الشخص البالغ عمره 13 فالماذا ؟؟
سأترك هذا الجواب لكم لأرى من سيطبقه و سيعرف كنوع من المشاركة وسنكمل في الدرس القادم إن شاء الله .....
.
كيف تستطيع أن تتفادى الاخطاء ؟
-_- تقبلوا امتناني
هاني احمد


