Що таке баг, баг програми

Що таке баг, баг програми
Баг - жаргонне слово, яке вживається програмістами, що позначає помилку, прорахунок в програмі. Дослівно перекладається з англійської як «жук, дрібна комаха».

Звідки цей «термін» стався, достовірно не відомо. Існують дві найбільш популярні версії. Перша відсилає нас до Томасу Едісону, який помітив перешкоди в фонографі, і порахував що вони з'явилися через заповзли туди таргана. Розгвинтити коробку пристрою, винахідник не знайшов ніякого таргана і зрозумів, що баг знаходиться в самому пристрої. Друга версія стверджує що в 1945 році, гарвардські вчені тестували електронну обчислювальну машину Mark II Aiken Relay Calculator. Пристрій працювало некоректно, і коли його розкрили, між контактами реле був знайдений метелик. Комаха було визнано винним у поломці, а в технічну книгу було внесено запис: «First actual case of bug being found». З тих пір, слово баг і набуло значення «комп'ютерної помилки.»

Класифікація помилок

Щодо своїх розмірів, баги діляться на три види:

  • Незначні помилки.
  • Серйозні помилки.
  • Showstoppers.

Залежно від фази розробки ПО, під час якої виявляються баги, їх ділять на:

  • синтаксичні. Це ті помилки, які роблять компіляцію програми неможливою. Наприклад, неправильно поставлена ​​відкриває і закриває дужка;
    застереження компілятора. Вони відбуваються коли програміст використовує невідому програмі змінну. В такому випадку, компілятор зауважує незвичайне дію користувача і ставить його до відома. Проте програміст сам вирішує, нехтувати оповіщенням програми чи ні;
  • семантичні. Вони ж смислові, вони ж помилки тимчасового виконання. Це баги сегментації або неправильного математичного дії, коли, наприклад, замість множення користувач виробляє складання змінних.

Щодо частоти своєї появи баги діляться на:

  • постійні;
  • епізодичні;
  • ті, які з'являються тільки на машині клієнта.

За місцем виникнення і їх напрямку, розрізняють такі баги тестування, обробки даних, помилки інтерфейсу користувача і баги, що виникають при підвищенні навантаження. Існують також помилки граничних умов і поломки ідентифікаторів

Баги також діляться на різновиди

  • Борбаг - легкообнаружіваемая, стабільна помилка.
  • Гайзенбаґ. Таку помилку виявити досить важко. Вона періодично зникає, або змінює властивості.
  • Мандельбаг - помилка з ентропійних, непередбачуваною поведінкою.
  • Шредінбаг - небезпечна критична помилка. Ніяк себе не показує, до тих пір, поки програміст на неї випадково не зустріне її в вихідному коді. Зазвичай, після виявлення такого бага, програма перестає функціонувати.

Пошук по сайту:

Схожі статті