آموزش ASP.NET - جلسه دهم 06/06/86
کنترل روال برنامه
انواع خطا در برنامه نویسی :
بطور کلی سه نوع خطا در برنامه نویسی .net وجود دارد .
1- خطاهای املایی ( Syntax Error )
2- خطاهای زمان اجرا ( Run time error )
3- خطاهای منطقی ( Logical Error )
1- خطاهای املایی : در صورت بروز این نوع خطاها باید به بخش راهنمای ویژوال استودیو یعنی MSDN مراجعه نموده و آنرا برطرف کرد .
2- خطاهای زمان اجرا : این خطاها در زمان اجرای برنامه اتفاق می افتند . برای جلوگیری از بوجود آمدن این خطاها دو شیوه وجود دارد . که عبارتند از :
1-2- شیوه اول : در این شیوه برنامه نویس در هنگام تعریف متغیر ها ، همچنین در هنگام ایجاد کلاس ها و بکار بردن دستورات مختلف ، احتیاط می کند .
1-1-2- تست مقادیر کران بالا و پایین : یعنی برنامه نویس خودش با کمترین و بیشترین مقدار برنامه را تست می کند تا ببیند آین برنامه درست کار می کند یا خیر ؟
2-1-2- تست با dirty data : برنامه نویس عمداً مقادیر اشتباهی وارد می نماید ، تا ببیند که آیا برنامه نسبت به داده های اشتباه چه عکس العملی نشان می دهد . آیا خطایی رخ می دهد یا خیر . و در ضمن آیا پیام مناسب از طرف سیستم صادر می گردد ؟
2-2- شیوه دوم : در این شیوه برنامه نویس مواردی را که احتمال بروز خطا می دهد ، مجموعه عملیات را انجام می دهد که در صورت بروز خطا از کنترل خارج نشود و در صورت بروز خطا اقدامات دیگری بطور خودکار صورت پذیرد .
برای پیاده سازی پیگیری از ساختار try … catch استفاده می کنیم .
|
مثال : Dim n1 as integer = 10 Dim n2 as integer = me.textbox1.text Try Dim n3 as integer = n1/n2 Me.lalble1.text = n3.tostring catch Me.lable1.text = " invalid number " End try |
فرم کلی : Try مجموعه دستورات Catch دستوراتی که در صورت بروز خطا اجرا می شوند End try |
در مثال بالا ، در صورت بروز هر گونه مشکل در دستورات بخش try کنترل برنامه به VB بر نمی گردد . بلکه توسط برنام خودمان کنترل شده و پیامی را که برنامه نویس در بخش catch نوشته اجرا می شود.
در قسمت catch ، یک متغیر از جنس except وجود دارد . این متغیر در حقیقت حاوی خطای رخ داده می باشد که خود .net نشان می دهد ، که می توان آن را نیز به کاربر نمایش داد . مثلاً :
Me.lablle1.text = ex.message
بلوک try… catch دارای قسمت سومی نیز به نام finally می باشد ( که دلخواه است . ) مجموعه دستوراتی که در این قسمت می توانند قرار بگیرند ، به هر حال اجرا می شوند ، چه خطا بروز نکند . چون گاهی مطمئن نیستیم که خطایی رخ می دهد یا خیر .
3- خطاهای منطقی :در این مورد الگوی خاصی برای پیشگیری وجود ندارد . اما در خصوص پیگیری این گونه خطاها تنها می توان برنامه را در شرایط مختلف تست کرد . در این موارد اشخاصی برنامه تولید شده را در شرایط گوناگون تست کرده و خطاهای منطقی رخ داده را گزارش می نمایند . به این اشخاص end user می گویند .
یکی از شیوه های مناسب برای اشکال زدایی از منطق برنامه ، استفاده از break point است . این دستور در منوی debug قرار دارد . ( معادل کلید f9 )
اگر روی خطی break point بگذاریم ، در زمان برنامه نویسی ، برنامه هنگام اجرا به صورت قدم به قدم اجرا میشود . ( نکته : با نگه داشتن اشاره گر ماوس روی متغیر ها مقدار آنها نمایش داده می شود ) . کلید f10 نیز برنامه را خط به خط اجرا می کند .