باگ های کامپیوتر و اپیلیکشن چگونه به وجود می آیند؟
احتمالا تاکنون با اصطلاح باگ در سیستم ها و برنامه های کامپیوتری مواجه شده اید، باگ به زبان انگلیسی به معنی حشره است و در دنیای کامپیوتر به وجود اشکال در عملکرد یک برنامه گفته می شود. در این گزارش به بررسی این پدیده می پردازیم.
به گزارش سیناپرس، برنامه نویسی کامپیوتری بر اساس دستورات و کدهای نوشته شده توسط یک متخصص نرم افزار ایجاد می شود و نوشتن یک کد اشتباه می تواند در عملکرد کلی آن برنامه تاثیر منفی داشته باشد.
زمانی که ما می گوییم نرم افزار دارای اشکال است یا باگ است به این معنی است که ان برنامه به درستی و آن طور که طراحی شده است، کار نمی کند. این مشکل معمولاً تقصیر یک برنامه نویس در جایی است که یا اشتباه کرده یا قادر به پیش بینی همه شرایط ممکن نرم افزار نیست. اگر شما برنامه نویسی هستید که به طور تصادفی باعث شد همه چیز به اشتباه پیش برود، ممکن است وجود یک باگ در برنامه شما استرس زا باشد.
وجود باگ در برنامه می تواند نتایجی به مراتب فاجعه آمیزتری از تصورات شما داشته باشد. برای نمونه در سال ۱۹۶۲ میلادی، موشک حامل کاوشگر فضایی مارینا ۱ به طرز خطرناکی از کنترل خارج شد و ۲۹۰ ثانیه پس از پرتاب منهدم شد. دلیل این موضوع یک اشکال کوچک در نرم افزار راهنمایی بود که مانع از دریافت سیگنال می شد. این مشکل ناشی از وجود یک خط فاصله اشتباه در کد های برنامه نویسی بود که خساراتی در حدود ۱۸ میلیون دلار به جا گذاشت.
در سال ۲۰۰۸، نرم افزار دارای باگ در ترمینال ۵ جدید فرودگاه هیترو منجر به ارسال هزاران چمدان به مکان های اشتباه و لغو ۵۰۰ پرواز و هزینه ای بیش از ۱۶ میلیون پوند شد.
در آستانه سال ۲۰۰۰ میلادی، یک باگ کامپیوتری هزینه هایی بین ۳۰۰ تا ۵۰۰ میلیارد دلار در سراسر جهان برای جلوگیری از بلایای احتمالی رایانه ای به همراه داشت. همه اینها به این دلیل بود که بیشتر نرم افزارها از دو رقم به جای چهار رقم برای نشان دادن سال استفاده می کنند، بنابراین وقتی سال نو می رسید، رایانه های جهان ناگهان فکر می کردند که به جای سال ۲۰۰۰، سال ۱۹۰۰ است و این موضوع بسیاری از جدول های زمانی و برنامه ها را به هم ریخت.
به طور کلی این وظیفه تست کنندگان نرم افزار است که سعی کنند همه باگ ها را شناسایی کنند، اما وقتی نرمافزاری بسیار پیچیده باشد و روی هزاران نوع مختلف سخت افزار رایانه در ترکیب با میلیون ها نرم افزار دیگر اجرا میشود، رفع باگ ها تقریبا غیرممکن است. . همه اینها به این معنی است که راه اندازی کامپیوتر منحصر به فرد شما با نرم افزاری خاص ممکن است همان ترکیب نادری باشد که باعث می شود یک نرم افزار مادر، اشکالات خود را نشان دهد. بنابراین باید پذیرفت که باگ بخشی از فرایند برنامه نویسی بوده و در این میان یک نبرد تمام نشدنی بین مهندسین نرم افزار و این باگ ها وجود دارد و در واقع یکی از مهمترین دلایل انتشار آپدیت های مختلف در نرم افزارها، همین موضوع است.
مترجم: نیروانا محمدحسینی
منبع: sciencefocus
No tags for this post.