کد غیرقابل دسترسی

دانشنامه عمومی

در برنامه نویسی کامپیوتر، کد غیرقابل دسترسی بخشی از کد منبع یک برنامه است که هرگز نمی تواند اجرا شود، زیرا مسیر جریان کنترل به کد از طریق بقیه برنامه وجود ندارد. کد غیرقابل دسترس گاهی اوقات کد مرده نیز نامیده می شود، اگرچه کد مرده نیز ممکن است به کدی که اجرا می شود مراجعه کند اما بر خروجی یک برنامه تأثیری ندارد. [ ۱]
به طور کلی کد غیرقابل دسترسی به دلایل مختلف نامطلوب می باشد از جمله:
• حافظه غیرضروری را اشغال می کند.
• باعث ذخیره غیرضروری دستورالعمل ها در حافظه CPU می شود که همچنین محل داده ها را کاهش می دهد.
• از منظر نگهداری برنامه، زمان و تلاش ممکن است صرف حفظ و مستندسازی یک قطعه کد شود که در واقع غیرقابل دسترسی است و از این رو هرگز اجرا نمی شود.
با این حال، کد غیرقابل دسترس می تواند برخی از کاربردهای مشروع داشته باشد، مانند ارائه یک کتابخانه از توابع برای تماس یا پرش به صورت دستی از طریق اشکال یاب در حالی که برنامه پس از نقطه توقف متوقف می شود. این به ویژه برای بررسی و چاپ وضعیت داخلی کاربرد دارد. حتی ممکن است معقول باشد که چنین کدی در نسخه نهایی که به مشتریان ارسال می شود ضمیمه شود، و یک برنامه نویس بتواند یک نسخه اشکال زدایی را به نسخه فعلی مشتری اضافه کند، در مواقعی که یک اشکال در نمونه در حال اجرا باشد. این متفاوت از توابع اشکال زدایی است که تنها در طول توسعه استفاده می شوند و فراموش می شوند که در نسخه نهایی حذف شوند.
وجود کد غیرقابل دسترسی می تواند به علت عوامل مختلفی باشد. از جمله:
• اشتباهات برنامه نویسی در شاخه های شرطی پیچیده
• یک دست آورد از تحولات داخلی انجام شده توسط بهینه سازی کامپایلر
• تست ناقص یک برنامه جدید یا اصلاح شده که قادر به تست کدهای غیرقابل دسترس نبوده است.
• کد منسوخ که یک برنامه نویس فراموش کرده است آن را حذف کند.
• کد استفاده نشده است که یک برنامه نویس تصمیم گرفت آن را حذف نکند؛ زیرا با کد عملکردی متصل بوده است.
• کد شرطی که مشروط به چیزی باشد که نائل نشود، زیرا داده های ورودی فعلی هرگز باعث نمی شود که کد اجرا شود.
• کد منسوخ پیچیده که عمداً نگهداری و حفظ شده، اما غیرقابل دسترس می باشد تا بتواند در صورت نیاز دوباره احیا شود.
• ساختارهای اشکال زدایی و کد توسعه قبلی که هنوز از یک برنامه حذف نشده اند.
عکس کد غیرقابل دسترسی
این نوشته برگرفته از سایت ویکی پدیا می باشد، اگر نادرست یا توهین آمیز است، لطفا گزارش دهید: گزارش تخلف

پیشنهاد کاربران