برنامه نویسی

رسیدگی به خطا و اشکال زدایی: نوشتن کد انعطاف پذیر

مقدمه

در برنامه نویسی ، خطاها اجتناب ناپذیر هستند. تسلط بر تکنیک های رسیدگی به خطای و اشکال زدایی برای نوشتن کد قوی ، مقاوم و قابل نگهداری بسیار مهم است. این ماژول انواع خطاها ، نحوه رسیدگی به استثنائات را با لطف و استراتژی های اشکال زدایی برای اطمینان از اجرای برنامه نرم و صاف را در بر می گیرد.


درس 1: درک انواع مختلف خطاها و اشکالات

مفهوم:
خطاها می توانند در حین توسعه بوجود بیایند و درک انواع آنها به شناسایی و حل و فصل کارآمد کمک می کند.

انواع خطاها:

  • خطاهای نحوی: اشتباهات در ساختار کد که از اجرای آن جلوگیری می کند.
  • خطاهای زمان اجرا: خطاهایی که در هنگام اجرای برنامه رخ می دهد ، مانند تقسیم صفر.
  • خطاهای منطقی: کدی که اجرا می شود اما به دلیل منطق ناقص نتایج نادرست تولید می کند.
  • خطاهای معنایی: تفسیر نادرست از نحوه عملکرد زبان ، منجر به رفتار غیر منتظره.

کد مثال:

# Syntax Error
print("Hello"  # Missing closing parenthesis

# Runtime Error
result = 10 / 0  # Division by zero

# Logical Error
total = 5 * 5  # Incorrect logic for sum calculation
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

برای نکته: پیام های خطا را با دقت بررسی کنید تا منبع آنها را بفهمید و آنها را به طور کارآمد برطرف کنید.


درس 2: به جز امتحان کردن: رسیدگی به خطاهای با ظرافت در کد

مفهوم:
رسیدگی به استثناء تضمین می کند که برنامه شما می تواند با ظرافت به خطاهای غیر منتظره پاسخ دهد.

کد مثال:

try:
    number = int(input("Enter a number: "))
    result = 10 / number
    print("Result:", result)
except ZeroDivisionError:
    print("Cannot divide by zero!")
except ValueError:
    print("Invalid input. Please enter a valid number.")
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

بهترین روشها:

  • ابتدا استثنائات خاص را انجام دهید ، سپس موارد کلی.
  • از ابتلا به استثنائات گسترده خودداری کنید مگر اینکه لازم باشد.
  • بلوک های استثناء را مختصر و متمرکز نگه دارید.

برای نکته: برای ضبط جزئیات خطا برای تجزیه و تحلیل بعدی از ورود به سیستم در داخل بلوک های استثنا استفاده کنید.


درس 3: افزایش و صید استثناها: کنترل رفتار کد

مفهوم:
می توانید استثنائات را عمداً برای اجرای شرایط یا گرفتن خطاهای سفارشی مطرح کنید.

کد مثال:

def divide(a, b):
    if b == 0:
        raise ValueError("Denominator cannot be zero!")
    return a / b

try:
    print(divide(10, 0))
except ValueError as e:
    print(e)
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

بهترین روشها:

  • از استثنائات سفارشی برای سناریوهای خطای خاص استفاده کنید.
  • استثنائات را با پیام های شفاف و توصیفی افزایش دهید.
  • استثنائات را در سطوح مناسب در برنامه بگیرید.

برای نکته: استفاده کردن finally برای اجرای کدی که باید بدون در نظر گرفتن اینکه آیا یک استثنا رخ داده است ، اجرا شود.


درس 4: تکنیک های اشکال زدایی: یافتن و رفع اشکالات مانند یک حرفه ای

مفهوم:
استراتژی های اشکال زدایی مؤثر به شناسایی و رفع سریعتر مشکلات در کد شما کمک می کند.

تکنیک های اشکال زدایی رایج:

  1. چاپ اشکال زدایی: برای ردیابی مقادیر متغیر از عبارات چاپی استفاده کنید.
  2. اشکال زدایی تعاملی: از ابزارهای IDE استفاده کنید تا از طریق خط کد به خط بروید.
  3. ورود به سیستم: برای ضبط وضعیت برنامه ، سیاهههای مربوطه را بنویسید.
  4. آزمایش واحد: تست ها را برای گرفتن اشکالات در اوایل چرخه توسعه بنویسید.

کد مثال برای ورود به سیستم:

import logging

logging.basicConfig(level=logging.INFO)
logging.info("Program started")

try:
    result = 10 / 2
    logging.info(f"Result: {result}")
except Exception as e:
    logging.error(f"Error occurred: {e}")
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

برای نکته: از پیام های توصیفی و سطح ورود به سیستم مناسب استفاده کنید (اطلاعات ، اشکال زدایی ، خطا).


درس 5: خواندن و درک پیام های خطا

مفهوم:
پیام های خطا سرنخ های اساسی را برای تشخیص و رفع اشکالات به طور مؤثر ارائه می دهند.

مراحل تفسیر پیام های خطا:

  • نوع خطا: طبقه بندی را مشخص کنید (به عنوان مثال ، ValueErrorبا TypeError).
  • محتوای پیام: بفهمید چه اشتباهی رخ داده است.
  • ردیابی: برای یافتن محل وقوع خطا ، پشته تماس را دنبال کنید.
  • شماره خط: خط کد دقیق را ایجاد کنید که باعث مسئله می شود.

خروجی مثال:

Traceback (most recent call last):
  File "main.py", line 3, in 
    print(10 / 0)
ZeroDivisionError: division by zero
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

برای نکته: برای تجزیه و تحلیل زنجیره های خطای پیچیده از ماژول Traceback Python استفاده کنید.


پایان

رسیدگی به خطای مؤثر و اشکال زدایی مهارت های اساسی برای نوشتن کد انعطاف پذیر است. درک نحوه گرفتن ، رسیدگی و اشکال زدایی خطاهای اشکال زدایی ، اجرای برنامه نرم و نرم تر و قابل پیش بینی تر را تضمین می کند.

غذای اصلی:

  • بین خطاهای نحوی ، زمان اجرا ، منطقی و معنایی تمایز قائل شوید.
  • استفاده کردن try-except بلوک ها برای رسیدگی به خطاها با لطف.
  • برای برقراری ارتباط با خطای روشن ، استثنائات سفارشی را افزایش دهید.
  • از تکنیک های اشکال زدایی مانند ورود به سیستم و آزمایش واحد برای وضوح سریعتر مسئله استفاده کنید.

چه چیزی بعدی؟
در ماژول بعدی ، ما به عملیات ورودی/خروجی پرونده شیرجه می زنیم ، یاد می گیریم که چگونه از طریق خواندن و نوشتن به پرونده های کارآمد.

در TestAmplify به ما مراجعه کنید | X | اینستاگرام | وابسته به لینکدین

شرح تصویر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا