

بکارگیری و مدیریت Exception و نکاتی که باید در مورد آن بدانید
بکارگیری و مدیریت Exception روال متداولی در برنامه نویسی می باشد. برای بهبود کیفیت اجرای برنامه خود، باید نکاتی را در باره بکارگیری و مدیریت Exception ها در نظر بگیرید.
- همیشه از نوع مشخصی از Exception برای Catch کردن خطا های بوجود آمده در Method ها استفاده نمایید. سعی کنید هرگز از کلاس Exception به عنوان یک نوع کلی برای Catch کردن انواع Exception ها استفاده نکنید.
- همیشه در کدهایی که امکان بروز Exception در آنها وجود دارد از بلوک try – catch – finally استفاده کنید.
با استفاده از ساختار try – catch میتوانید Exception ها را به درستی مدیریت کنید. با قرار دادن بخش finally روال cleanup منابعی که باید پس از اجرای دستورات آزاد شوند برایتان فراهم می شود. همچنین برگرداندن مقدار مناسب به کد فراخوانی کننده ی Method را می توانید در finally انجام دهید.

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


