دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۶
  • اردیبهشت

جلسه ۲۹ : کنترل خطا-Exception Handling در #F

  • دسته‌بندی‌ها :
جلسه ۲۹ : کنترل خطا-Exception Handling در #F
    • جزئیات
    • نوع محتواآموزشی

      مقدمه

      سلام درود خدمت همراهان همیشگی سایت پی وی لرن . با آموزش زبان برنامه نویسی #F همراهتون هستیم. در صورتی که جایی از کد دارای اشکال شود، چهارچوب کاری NET. ، یک خطا یا Exception اعلام می کند. این بار قصد داریم کنترل خطا یا Exception Handling در #F و دستورالعمل پایه برای F# exception handling block و سینتکس عملکرد تابع failwith در #F و… رو بررسی می نماییم.

      کنترل خطا یا Exception Handling در #F

      exception مشکلی است که در هنگام اجرای یک برنامه رخ می دهد. مانند تلاش برای تقسیم بر صفر.

      exception راهی برای انتقال کنترل از یک قسمت از یک برنامه به قسمت دیگر را ارائه می دهد.

      مدیریت exception در #F ساختارهای زیر را فراهم می کند.( کنترل خطا یا Exception Handling در #F )

      ساختتوضیحات
      raise exprexception داده شده را اعلام می کند .
      failwith exprSystem.Exception exception را اعلام می کند.
      try expr with rulesگرفتن عبارات مطابق با قوانین الگو
      try expr finally exprاجرای آخر عبارت در زمانی که محاسبات موفق بوده و وقتی یک exception مطرح می شود.
      | 😕 ArgumentException یک قاعده منطبق با نوع NET exception.
      | 😕 ArgumentException as eیک قاعده مطابق با نوع NET exception. داده شده، اتصال نام به مقدار exception object.
      | Failure(msg) → exprیک قاعده مطابق با data-carrying F# exception داده شده است.
      | exn → exprیک قاعده منطبق با هر exception، اتصال نام exn به مقدار exception object.
      | exn when expr → exprیک قانون منطبق با exception در شرایط داده شده، نام exn را به مقدار exception object مرتبط می کند.

      اجازه دهید ما با دستورالعمل اساسی Exception Handling شروع کنیم.

      سینتکس

      دستورالعمل پایه برای F# exception handling block در زیر آمده است .

      مثال : 

      جایی که،

      • exception-type نام یک F# exception جدید است.
      • argument-type نشان دهنده نوعی از یک ارگومان است که می تواند هنگامی که مطرح کردید یک exception از این نوع را، عرضه شود.
      • آرگومان چندگانه را می توان با استفاده از انواع چندگانه برای argument-type مشخص کرد.

      عبارت try…with برای مدیریت exception در زبان F # استفاده می شود.

      سینتکس برای بیان try…with در زیر آمده است.

      مثال : 

      عبارت try…with به شما امکان می دهد کد clean-up را اجرا کنید حتی اگر یک بلوک از یک exception را پرتاب کند.

      سینتکس برای …try

      مثال : 

      تابع raise استفاده می شود تا نشان دهد که یک error یا وضعیت استثنایی رخ داده است. همچنین اطلاعات مربوط به خطا در آبجکت exception را ضبط می کند.

      سینتکس برای تابع raise است.

      مثال : 

      تابع failurewith یک #exception F تولید می کند.

      سینتکس عملکرد تابع failwith در #F

      مثال : 

      تابع invalidArg یک آرکومان exception را تولید می کند.

      مثال : 

      مثال Exception Handling

      مثال ۱

      برنامه زیر نشان می دهد Exception Handling پایه را با یک بلوک ساده  try… with.

      مثال : 

      هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.

      مثال : 

      مثال ۲

      #F یک نوع exception را برای اعلان exception ارائه می دهد. شما می توانید از نوع exception مستقیما در فیلترها در عبارت  try…with استفاده کنید.
      مثال زیر این را نشان می دهد.

      مثال : 

      هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.

      مثال : 

      مثال ۳

      مثال زیر exception handling تو در تو را نشان می دهد.

      مثال : 

      هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.

      مثال : 

      مثال ۴

      تابع زیر عملکرد failwith را نشان می دهد.

      مثال : 

      هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.

      مثال : 

      خب اینم از مثال سینتکس عملکرد تابع failwith در #F .

      مثال ۵

      تابع invalidArg یک آرگومان exception را تولید می کند. برنامه زیر این را نشان می دهد.

      مثال : 

      هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.

      مثال : 

      بعضی از اطلاعات دیگر در مورد فایل ها و متغیر ها باعث error در سیستم می شود که بسته به سیستم، نمایش داده خواهد شد.

      کلام پایانی

      تا این جا کنترل خطا یا Exception Handling در #F و دستورالعمل پایه برای F# exception handling block و سینتکس عملکرد تابع failwith در #F و… رو بررسی نمودیم.ادامه مباحث رو در جلسه بعد داریم.

      QR:  جلسه ۲۹ : کنترل خطا-Exception Handling در #F
      به اشتراک بگذارید