فرایند دیباگ کردن در برنامه نویسی به چه معنا است؟


Debugging به فرایند مشکل یابی یک نرم‌افزار یا اپلیکیشن گفته می شود. زمانی که ما کدنویسی می کنیم، معمولاً در حین کدنویسی برخی خطاها را مرتکب می‌شویم که در نهایت منجر به این می‌شوند تا برنامه ی ما آن طور که باید و شاید کار نکند. به طور کلی، ما معمولاً چند نوع مشکل در برنامه‌های خود داریم که عبارتند از:

- ارورهای سینتکسی: به نوشتار کدهای یک زبان برنامه نویسی Syntax گفته می شود. گاهی اوقات برنامه نویسان در حین نوشتن برخی دستورات، غلط املایی مرتکب می شوند. مثلاً به جای نوشتن دستور print، می‌نویسند pritn. در برخی زبان‌ها مثل HTML و CSS مرتکب شدن چنین خطاهایی خیلی مشکل ساز نیست اما برخی از دیگر زبان‌ها مثل PHP و Python با ارورهای سنتکسی خیلی مشکل دارند و برنامه هرگز اجرا نخواهد شد.

- ارورهای سمنتیک: این دست ارورها زمانی رخ می‌دهند که کدهای شما درست است اما نتیجه ی مطلوب را دریافت نمی‌کنید مثل زمانی که عددی را بر صفر تقسیم کنید (در ریاضیات چنین عملی امکان پذیر نیست!)

- ارورهای منطقی: این دست از ارورها یا مشکلات جزو ارورهای سخت هستند و شاید یک برنامه نویس روزها و شاید هفته‌ها برای یافتن آن‌ها می بایست زمان بگذارد. سینتکس برنامه درست است و برنامه می بایست همان‌ طور که انتظار می‌رود اجرا شود اما واقعیت این گونه نیست! فرض کنیم که یک فروشگاه آنلاین داریم و زمانی که مشتری به سبد خرید خود می رود، برنامه‌ای که ما نوشته‌ایم جمع سبد خرید را اشتباه در معرض دید وی قرار می دهد.

به خاطر داشته باشید
توجه داشته باشیم که اصطلاح Debug کردن یک نرم‌افزار در دهه ی ۴۰ میلادی رواج پیدا کرد زمانی که برنامه نویسی به نام Grace Hopper یک حشره را از داخل یک سیستم کامپیوتری که منجر به اختلال در کار آن شده بود خارج کرد. کلمه ی Bug به معنی حشره است.
لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان
محسن
محسن
در مورد "ارورهای منطقی" یک مثال خوب این هست که مثلا برنامه باید مساحت شکل رو حساب کنه، همه چیز درست کار می کنه ولی محیط رو محاسبه می کنه

خوبه که یادآور بشم Debugging یکی از مراحل اصلی در چرخه حیات یک اپلیکیشن از دیدگاه مایکروسافت هست و به همراه test که جزء جدایی ناپذیر Debugging هست، مرحله ششم از این چرخه 9 مرحله ای رو تشکیل می دن

9 مرحله چرخه حیات اپلیکیشن از دیدگاه microsoft
Planning your project
Designing the user interface (UI)
Updating the app manifest
Writing the code
Building the app
Debugging and testing the app
Packaging the app
Validating the app
Deploying the app
Insight
Insight
به‌طور کلی ارورهای موجود در فرآیند برنامه‌نویسی به دو دسته‌ی کلی Compile-Time Error و Run-Time Error تقسیم میشه.
به عنوان نمونه، سه نوع اروری که در مقاله به اون‌ها اشاره شده اینگونه در دو دسته‌ی فوق قرار میگیرن که ارورهای سینتکسی به عنوان Compile-Time و ارورهای سمنتیک و منطقی در دسته‌ی Run-Time قرار میگیرن.
ضمنا فراموش نکنیم که ما در کدنویسی HTML و CSS فرآیند کامپایلی نداریم و فقط نشانه‌گذاری و استایل‌نویسی میکنیم.
fighter
fighter
bravo
کاربر میهمان
aminمن یک کاربر مهمان هستم
آموزش هاتون عالیه.............
AHSEDAGHAT
AHSEDAGHAT
کادر آبی بسیار جالب بود. این نوع توضیحات باعث می شود کلمات انگلیسی راحت تر به ذهن سپرده شود.
کاربر میهمان
Shariatمن یک کاربر مهمان هستم
بسیار جامع و کامل .خسته نباشید و همراهمان باشید
کادر ابی عالی
Amirhv
Amirhv
عالیییییییییییییییییییییییی
کاربر میهمان
masoudمن یک کاربر مهمان هستم
با سلام خدمت مهندس مرادی، کمال تشکر رو بخاطر سایت بسیار عالیتون دارم، امیدوارم که همیشه در کارهاتون موفق باشی
javad
javad
خداوند یارویاورتان باشد
رضا بختیاری
رضا بختیاری
كادر ابي جالب بود حتي يه عكس هم ازش هست كاش اونم قرار ميداديد
مرسي بابت اموزش هاي خوبتان