بکارگیری و مدیریت Exception – نکات مهمی که باید بدانید

بدون دیدگاه
بکارگیری و مدیریت Exception باید ها و نباید های استفاده و مدیریت Exception ها در زبان سی شارپ

بکارگیری و مدیریت Exception و نکاتی که باید در مورد آن بدانید

بکارگیری و مدیریت Exception روال متداولی در برنامه نویسی می باشد. برای بهبود کیفیت اجرای برنامه خود، باید نکاتی را در باره بکارگیری و مدیریت Exception ها در نظر بگیرید.

  • همیشه از نوع مشخصی از Exception  برای  Catch کردن خطا های بوجود آمده در Method ها استفاده نمایید. سعی کنید هرگز از کلاس Exception به عنوان یک نوع کلی برای Catch کردن انواع Exception ها استفاده نکنید.
  • همیشه در کدهایی که امکان بروز Exception در آنها وجود دارد از بلوک try – catch – finally استفاده کنید.
    با استفاده از ساختار try – catch میتوانید Exception ها را به درستی مدیریت کنید. با قرار دادن بخش finally روال cleanup منابعی که باید پس از اجرای دستورات آزاد شوند برایتان فراهم می شود. همچنین برگرداندن مقدار مناسب به کد فراخوانی کننده ی Method را  می توانید در finally انجام دهید.
بکارگیری و مدیریت Exception روال مدیریت Exception در سی شارپ
  • امکان Bubbling در ساختار زبانی C# وجود دارد. ولی در کد هایی که توابع به صورت تو در تو صدا زده می شوند از آن پرهیز نمایید. تا حد ممکن سعی کنید Exception ها را در همان سطحی که رخ می دهند، Catch کرده و مدیریت کنید. همچنین از throw کردن مجدد Exception برای استفاده از Bubbling تا حد امکان پرهیز کنید. درواقع Catch کردن متوالی Exception در سطوح مختلف Stack موجب پایین آمدن چشمگیر سرعت برنامه خواهد شد.
  • از استفاده از متدها و ساختار هایی که مستعد بروز Exception حتی در موارد نچندان بحرانی هستند، تا حد امکان پرهیز کنید. برای مثال می توان به تبدیل کردن یک رشته در حالی که String حاوی مقدار عددی نیست اشاره کرد. همچنین خواندن مقداری از یک آرایه خالی نمونه دیگری از این شرایط است. در چنین حالتی شما می توانید از متد ()Int32.Parse به جای ()Convert.ToInt32 استفاده کنید. این در حالی است که روش دوم در صورتی که رشته ورودی حاوی مقدار عددی نباشد Exception خواهد داد.
  • ممکن است در کد خود بخواهید به هر دلیل Exception به وجود آورده و آن را Throw کنید. حتماً در آن از یک پیام خوانا و واضح به عنوان Message استفاده نمایید. بدین روش در صورت Catch شدن این Exception، محل رخ دادن و دلیل آن تا حدامکان مشخص خواهد بود.

برای برگرداندن پیغام خطا یا مقادیر غیرمتعارف از طریق متد های نوشته شده توسط خودتان به تابع فراخوانی کننده و مدیریت کردن و بررسی کردن پیام و تفسیر آن تا حد امکان از Exception استفاده نمایید.

شهاب ساری اصلانی

از سال 1385 به صورت جدی مشغول تدریس در حوزه های برنامه نویسی دات نت و طراحی بانک های اطلاعاتی بوده ام. تدریس به عنوان یک حرفه همیشه برایم جذاب بوده و یادگیری جدیدترین مباحث لذت بخش است.

ارسال یک دیدگاه

آدرس ایمیل شما منتشر نخواهد شد.