باگ هر چیزی است که برنامه را از رفتار مورد انتظارش دور میکند: دکمهای که کار نمیکند، مبلغ اشتباه در فاکتور یا اپلیکیشنی که ناگهان بسته میشود.
منشأ باگ#
معمولاً از اشتباه آدم است، نه کامپیوتر. چند دلیل رایج:
- اشتباه در منطق برنامه، مثلاً شرط اشتباه
- فرضهای نادرست دربارهی ورودی کاربر
- حالتهای خاصی که پیشبینی نشدهاند، مثل متن خالی یا عدد منفی
- تداخل با بخش دیگر یا کتابخانهی خارجی
انواع از نظر اثر#
- خطای نوشتاری: در همان ابتدا معلوم میشود.
- خطای زمان اجرا: هنگام اجرا برنامه را متوقف میکند.
- خطای منطقی: برنامه اجرا میشود ولی جواب غلط میدهد؛ پیداکردنش سختتر است.
رفع باگ#
اول باید باگ را بتوانید دوباره بسازید، بعد علتش را پیدا کنید، رفعش کنید و تستی بنویسید تا دوباره برنگردد. این فرایند «دیباگ» نام دارد.
شما بهعنوان کاربر#
اگر باگی دیدید، گزارش خوب شامل این است: چه کردید، چه انتظاری داشتید، چه اتفاقی افتاد و روی چه دستگاه یا مرورگری. گزارش دقیق، زمان رفع را خیلی کم میکند.
نکته#
هیچ نرمافزار بزرگی کاملاً بدون باگ نیست. هدف، کمکردن باگ، پیداکردن سریع آنها و جلوگیری از ایجاد باگهای جدید با تست و بازبینی کد است.