что такое баг на сайте

что такое Баги на сайте?

Что означает слово «баг»?

Слово «баг», как и подавляющее большинство терминов программирования, заимствовано из английского языка, в котором «bug» означает насекомое – клопа, жука и т. д. Считается, что впервые его использовали разработчики одного из первых компьютеров – американского Mark II во второй половине 40-х годов двадцатого столетия. Однако слово «баг» в значении «ошибка, неполадка, сбой» встречается задолго до этого – например, в рабочих дневниках знаменитого изобретателя Т. Эдисона.

В современном сленге программистов слово «баг» используется для обозначения мелких ошибок в компьютерных программах, приводящих к их некорректной работе. Для сложных современных игровых программ наличие багов является неизбежным, особенно в первые месяцы после выпуска игры в продажу.

Что такое баг в игре?

В игровых программах багами называют различные ошибки, допущенные программистами, из-за которых сюжет игры может развернуться неожиданным образом, а персонаж – получить несвойственные ему черты или способности.

Некоторые из багов мешают игрокам, приводя к гибели персонажей или временной потере их возможностей, другие, наоборот, могут помочь решить игровую задачу нестандартным образом, третьи ни на что особо не влияют, кроме красоты и зрелищности игры.

Подробнее здесь:
https://ru.wikipedia.org/wiki/Баг
что такое баг на сайте. . что такое баг на сайте фото. что такое баг на сайте-. картинка что такое баг на сайте. картинка . Что означает слово «баг»?

Источник

Что такое баги, ворнинги и исключения в программировании

Разбираемся, какие бывают типы ошибок в программировании и как с ними справляться.

что такое баг на сайте. 3cadc6192efdb62e6d1215d7eb4f373f. что такое баг на сайте фото. что такое баг на сайте-3cadc6192efdb62e6d1215d7eb4f373f. картинка что такое баг на сайте. картинка 3cadc6192efdb62e6d1215d7eb4f373f. Что означает слово «баг»?

что такое баг на сайте. 821e7a0a41de2ee14e961e3857aca8c6. что такое баг на сайте фото. что такое баг на сайте-821e7a0a41de2ee14e961e3857aca8c6. картинка что такое баг на сайте. картинка 821e7a0a41de2ee14e961e3857aca8c6. Что означает слово «баг»?

Многим известно слово баг (англ. bug — жук), которым называют ошибки в программах. Однако баг — это не совсем ошибка, а скорее неожиданный результат работы. Также есть и другие термины: ворнинг, исключение, утечка.

В этой статье мы на примере C++ разберём, что же значат все эти слова и как эти проблемы влияют на эффективность программы.

что такое баг на сайте. kucheryaviy. что такое баг на сайте фото. что такое баг на сайте-kucheryaviy. картинка что такое баг на сайте. картинка kucheryaviy. Что означает слово «баг»?

Пишет о программировании, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.

Ошибки в программировании

Словом «ошибка» (англ. error) можно описать любую проблему, но чаще всего под ним подразумевают синтаксическую ошибку — некорректно написанный код, который даже не скомпилируется:

Компилятор тут же скажет, что в коде ошибка и скорее всего не хватает запятой или точки с запятой.

что такое баг на сайте. 18563129062020 6a4e9b3ae3023faad72ace61e6264ce47ed78056. что такое баг на сайте фото. что такое баг на сайте-18563129062020 6a4e9b3ae3023faad72ace61e6264ce47ed78056. картинка что такое баг на сайте. картинка 18563129062020 6a4e9b3ae3023faad72ace61e6264ce47ed78056. Что означает слово «баг»?

Также существуют ворнинги (англ. warning — предупреждение). Они не являются ошибками, поэтому программа всё равно будет собрана. Вот пример:

что такое баг на сайте. 18563129062020 e3ea06ecc4efe66fd609360c227a5daace25eda6. что такое баг на сайте фото. что такое баг на сайте-18563129062020 e3ea06ecc4efe66fd609360c227a5daace25eda6. картинка что такое баг на сайте. картинка 18563129062020 e3ea06ecc4efe66fd609360c227a5daace25eda6. Что означает слово «баг»?

Предупреждения не являются чем-то критичным, но могут иметь негативные последствия. Например, ваша программа будет использовать больше памяти, чем должна. Так как C++ нужен в том числе и для разработки высоконагруженных систем, этого допускать нельзя.

что такое баг на сайте. 18563129062020 c3d4b76cd89b05f2c8e5da53f69c6d45806e9160. что такое баг на сайте фото. что такое баг на сайте-18563129062020 c3d4b76cd89b05f2c8e5da53f69c6d45806e9160. картинка что такое баг на сайте. картинка 18563129062020 c3d4b76cd89b05f2c8e5da53f69c6d45806e9160. Что означает слово «баг»?

После восклицательного знака в треугольнике — количество предупреждений

Третий вид ошибок — ошибки сегментации (англ. segmentation fault, сокр. segfault, жарг. сегфолт). Они возникают, если программа пытается записать что-то в ячейку, недоступную для записи. Например:

Вот результат работы такого кода:

что такое баг на сайте. 18563129062020 d58f50d1222620cd1cfe95da3a91221bd0d26e65. что такое баг на сайте фото. что такое баг на сайте-18563129062020 d58f50d1222620cd1cfe95da3a91221bd0d26e65. картинка что такое баг на сайте. картинка 18563129062020 d58f50d1222620cd1cfe95da3a91221bd0d26e65. Что означает слово «баг»?

Баги в программах

Мы выяснили, что баг — это не совсем ошибка, а скорее неожиданное поведение программы или результат такого поведения. Баги могут быть чем-то забавным или неприятным. Например, как в играх:

Но они могут привести и к более серьёзным последствиям. Если неправильно спроектировать работу многопоточного приложения, то потоки будут постоянно опережать друг друга. Например, сообщение об ошибке из одного потока может опоздать на миллисекунду, из-за чего второй поток подумает, что никакой ошибки не было, и продолжит работу.

Если ваш код приводит в действие какое-нибудь потенциально опасное устройство, то ценой такой ошибки может быть чья-нибудь жизнь. Такое случилось с кодом для аппарата лучевой терапии Therac-25 — как минимум два человека умерло и ещё больше пострадали из-за превышения дозы радиации.

Исключения в программах

Также во время работы программы могут возникать ситуации, которые мешают корректной работе программы. Например, если вы просите пользователя ввести число, а он вводит строку.

Конвертировать введённое значение не всегда возможно, поэтому функция, которая занимается преобразованием, «выбрасывает» исключение (англ. exception). Это специальное сообщение говорит о том, что что-то идёт не так.

Если разработчик не описывает логику работы программы при вы выбрасывании исключения, то программа аварийно закрывается. Подробнее мы рассказали об этом в статье про ввод и конвертацию в C++.

Одно из самых известных исключений — переполнение стека (англ. stack overflow). В честь него даже назвали сайт, на котором программисты ищут помощь в решении своих проблем.

Компилятор C++ при этом может выдать ошибку сегментации, а не сообщение о переполнении стека:

что такое баг на сайте. 18563129062020 27e9aa5bdf801f94f7728fe14d1ac08405e5a691. что такое баг на сайте фото. что такое баг на сайте-18563129062020 27e9aa5bdf801f94f7728fe14d1ac08405e5a691. картинка что такое баг на сайте. картинка 18563129062020 27e9aa5bdf801f94f7728fe14d1ac08405e5a691. Что означает слово «баг»?

Вот аналогичный код на языке C#:

Однако сообщение в этот раз более конкретное:

что такое баг на сайте. 18563129062020 db52642fc67f6c7c46657360f234a883af322464. что такое баг на сайте фото. что такое баг на сайте-18563129062020 db52642fc67f6c7c46657360f234a883af322464. картинка что такое баг на сайте. картинка 18563129062020 db52642fc67f6c7c46657360f234a883af322464. Что означает слово «баг»?

В обоих случаях программа завершается, потому что не может дальше корректно работать.

Похожая ситуация — переполнение буфера (англ. buffer overflow). Она происходит, когда записываемое значение больше выделенной области в памяти.

Обратите внимание, что мы получили предупреждение об арифметическом переполнении (англ. integer overflow):

что такое баг на сайте. 18563129062020 7b64da46b2dc4329c15be64aeef9e636261e678c. что такое баг на сайте фото. что такое баг на сайте-18563129062020 7b64da46b2dc4329c15be64aeef9e636261e678c. картинка что такое баг на сайте. картинка 18563129062020 7b64da46b2dc4329c15be64aeef9e636261e678c. Что означает слово «баг»?

Тем не менее программа скомпилировалась. Если же такая ситуация возникнет во время вычислений, то мы можем не получить предупреждения.

Арифметическое переполнение стало причиной одной из самых дорогих аварий, произошедших из-за ошибки в коде. В 1996 году ракета-носитель «Ариан-5» взорвалась на 40-й секунде полёта — потери оценивают в 360–500 миллионов долларов.

Как избежать всех этих ошибок

К сожалению, вручную всё это заметить и исправить не получится. Однако существуют различные инструменты и технологии, которые могут помочь.

Один из таких инструментов — отладчик. Он помогает контролировать ход работы программы, чтобы отслеживать разные показатели.

Второй, более эффективный метод — unit-тесты. Они представляют из себя набор описанных ситуаций для каждого компонента программы с указанием ожидаемого поведения.

Например, у вас есть функция sum (int a, int b), которая возвращает сумму двух чисел. Вы можете написать unit-тесты, чтобы проверять следующие ситуации:

Если какой-то из этих тестов не пройден, вы узнаете об этом и сможете всё исправить. Это намного быстрее, чем проверять всё вручную.

Заключение

Ошибок существует слишком много. При этом самые опасные тяжелее обнаружить, что только усугубляет ситуацию.

Если вы хотите научиться писать качественный код и находить в нём ошибки, вы можете записаться на наш курс по разработке на C++.

Источник

Баги и ошибки — как искусство

Введение

Баг или же ошибка, связанная с нарушениями в целостности программы или программного кода, в этом кратком пособии я хочу рассказать об этих странных, забавных и порой неизвестных вещах, надеюсь, что это пособие поможет вам понять, как я смотрю на этот чудесный мир ошибок и недоработок, многие воспринимают их как что-то бесящее и крайне надоедливое, с определённой стороны они все правы.

Что такое “БАГ”

В программировании баг (англ. bug — жук)— жаргонное слово, обычно обозначающее ошибку в программе или системе, которая выдает неожиданный или неправильный результат. Большинство багов возникают из-за ошибок, сделанных разработчиками программы в её исходном коде, либо в её дизайне. Также некоторые баги возникают из-за некорректной работы компилятора, вырабатывающего некорректный код. Программу, которая содержит большое число багов и/или баги, серьёзно ограничивающие её работоспособность, называют нестабильной или, на жаргонном языке, “глючной”, “глюкнутой”, “забагованной”, “бажной”, “баг (а) нутой” (англ. unstable, buggy). Термин «баг» обычно употребляется в отношении ошибок, проявляющих себя на стадии работы программы, в отличие, например, от ошибок проектирования или синтаксических ошибок. Отчет, содержащий информацию о баге, также называют отчетом об ошибке или отчетом о проблеме (англ. bug report). Отчет о критической проблеме (англ. crash), вызывающей аварийное завершение программы, называют крэш репортом (англ. crash report). «Баги» локализуются и устраняются в процессе тестирования и отладки программы. Возможны ситуации, при которых ошибки остаются во внутреннем коде или программе они могут остаться не замеченными и обнаруженными уже при тестировании или выпуске программы или игры. Такие ситуации исправляются так называемыми “патчами” (англ. patch), выпускаются они как можно скорее стараясь залатать все дыры и проблемы, когда патч готов разработчик или программист выпускает “патч ноут” (англ. Patch note) список изменений и исправлений. На этом с терминологией всё, приступим к практике.

что такое баг на сайте. 00005.IuViljt. что такое баг на сайте фото. что такое баг на сайте-00005.IuViljt. картинка что такое баг на сайте. картинка 00005.IuViljt. Что означает слово «баг»?

Как выглядит баг

И как его исправить

Чаще всего их можно обнаружить на ранних стадиях разработки, например когда игра компилируется выскакивают ошибки или сообщения о неполадках, но бывает так что их можно и не заметить особенно когда было проделано много работы и ошибка не проявилась, для такого существуют тестировщики, люди которые 24 часа в сутки проверяют каждый угол на предмет ошибок, что бы при игре в условный Fallout 76 ваша игра окончательно не сломалась. Правда в конце концов люди не могут увидеть всё и для этого требуется ещё больше времени работы и труда, но даже при этом некоторые ошибки невозможно исправить, такие ошибки не критичны и ведь зачем их исправлять если это не приносит убытков, поэтому огромное количество багов не исправляются разработчиками, их исправляют игроки и просто не равнодушные люди. Эти вещи называются фиксами. Перейдём к виновнику этой книги. Самое простое это пропавшая текстура, это может быть прозрачная область или разноцветные пиксели, происходит если текстура пропала из игры. Более критичными являются ошибки в коде, прыгнул куда-то не туда и вот игра уже зависает, выдаёт ошибку и ломается, тут всё дело в том, что где-то есть сломанная частица кода, которая при активации выдаёт ошибку. Есть ошибки в тексте и звуке, к примеру вместо звука меча проигрывается звук курицы, а в субтитрах написано, что это была машина, тут играет человеческий фактор, ещё можно застрять в текстуре или сломать цепочку событий в игре. Всё исправить невозможно в силу того, что на таком уровне заметить их трудно, бывает они возникают из неоткуда, но всегда весело их находить если они не критичны.

что такое баг на сайте. 00002.SbtQQ s. что такое баг на сайте фото. что такое баг на сайте-00002.SbtQQ s. картинка что такое баг на сайте. картинка 00002.SbtQQ s. Что означает слово «баг»?

Место без текстур в Fallout76 – источник

Творческие решения

Но у ошибок нашли хорошую соревновательную сторону, спидраны — забеги по играм на скорость, проходить игру просто это так скучно, а вот с ошибками это совсем другое дело, сократить игру в 3 раза прыгая за текстуры, профессионалам на это дело расплюснуть, разбирать спидраны я не буду всё это уже сделали за меня, хочу лишь сказать что это удивительно как люди используют ошибки и недоработки, рассчитывают всё до пикселя и всё это основано на ошибках, багах и глитчах.

что такое баг на сайте. 00003.CvAWllM. что такое баг на сайте фото. что такое баг на сайте-00003.CvAWllM. картинка что такое баг на сайте. картинка 00003.CvAWllM. Что означает слово «баг»?

Критические ситуации

За примером далеко ходить не надо, можно вспомнить лица из Assassin’s Creed Unity, проблема была вызвана несовместимостью с некоторыми видеокартами, это ошибка была исправлена в патче первого дня но оставила свой отпечаток на и так большом пласте ненависти ввиду отсутствия оптимизации и багов, вот что об этом говорит главный творческий руководитель Ubisoft Жан Жесдон:

Если вы поиграете сейчас, со всеми исправлениями, — это будет очень красивая и хорошая игра. Иными словами, вероятно, мы подлетели слишком близко к Солнцу и утратили самоконтроль.

Именно поэтому Syndicate концентрировалась на качестве, с чем команда отлично справилась. Жан Жесдон

что такое баг на сайте. 00004.7ynbgq3. что такое баг на сайте фото. что такое баг на сайте-00004.7ynbgq3. картинка что такое баг на сайте. картинка 00004.7ynbgq3. Что означает слово «баг»?

В заключении хотел бы сказать что баги и ошибки порадили целые сегменты в разных культурах и стали большой частью игр и игровой индустрии. _DeVloPPeR_

Источник

Поиск багов как образ жизни

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Введение

В повседневной жизни мы уже чаще пользуемся сайтами и мобильными приложениями, чем прикладными программами для компьютера. В этой сфере проектов с открытым исходным кодом очень мало. Большинство проектов – продукты крупных компаний, имеющих несколько линий поддержки. Сообщить о баге через первую линию поддержки — практически бесполезное занятие. Особенно остро проблема стоит с банковскими приложениями. А сайты? Владельцы сайтов часто вообще не имеют команды разработки. А если через сайт предоставляется какая-нибудь услуга, то общение с менеджерами этих сервисов проходит ещё хуже, чем с первой линией поддержки. Самые интересные истории будут ниже. Надеюсь, они помогут компаниям обратить внимание на качество своих программных продуктов.

Баги на сайтах

Телеканал 2×2

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Пожалуй, 2×2 — единственный телеканал, который я смотрю. Никакого телевидения у меня не подключено, и я был очень рад, когда на сайте появился прямой эфир. Имея в наличии телевизор с доступом в Интернет, это было идеальным решением для меня – смотреть телеканал онлайн. Но на деле оказалось всё намного сложнее.

Прямой эфир через браузер на телевизоре не работал. Т.к. сообщать о багах разработчикам – часть моей трудовой деятельности, я быстро нашёл контакты на официальном сайте и попытался сообщить о проблеме. Почему попытался? За 2 месяца не удалось получить никаких ответов с двух почтовых адресов. И в группе ВК ничего дельного не ответили (маркетологу, раскручивающему группу в соц. сетях, явно было не до меня с неработающим сайтом).

Но я не отчаялся. Проблема была явно в трансляции и мне удалось её отследить. Она шла с серверов Rutube. Около месяца ушло на попытки связаться с их специалистами. Самое удачное общение произошло с администратором группы Rutube в VK. Мне дали контакты системного администратора. На письмо ему оперативно ответил его коллега, и мы договорились провести подключение, чтобы записать логи. Оказалось, сервер не был настроен для такого подключаемого клиента (телевизор с Tizen). На решение проблемы ушло 2 часа. Спасибо Алексею Лебедеву из Rutube и админу группы в ВК, которые единственные ответственно отнеслись к своей работе во всей этой цепочке «контактов».

Ресторан MaMa Mia

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

На сайте MaMa Mia нельзя оплатить заказ Online. По крайней мере, это не получилось у меня. А причина, как потом выяснилось, низкое качество кода. Но давайте по порядку.

Когда корзина полностью была сформирована, кнопка «Оформить заказ» не подавала никаких признаков жизни. А потом в почте я обнаружил это:

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Каждый клик по «неработающей» кнопке формировал новый заказ. Как видите, я не отказал себе в удовольствии хорошенько протестировать этот баг 😀

На сайте отсутствует форма обратной связи и какие-либо другие контакты, кроме телефона. Там, конечно же, отвечают менеджеры, далёкие от подобных проблем. С группой ВК этого ресторана такая же ситуация. Более-менее релевантные проблеме контакты мне получить не удалось.

На самом деле, это серьёзная проблема для бизнеса, когда некоторые недоработки, особенно с финансами (я ведь хотел оплатить заказ, но не смог), остаются незаметными для руководства. Более того, даже мы сами недавно умудрились попасть в подобную ситуацию, когда на пять дней сломалась форма запроса триального ключа. Мы очень сожалеем о потерянных пользователях 🙁 А в ресторане, видимо, нет.

Не получив никакой отдачи от общения с менеджерами, я открыл консоль браузера и начал смотреть (кстати, в web-разработке я практически не разбираюсь):

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Да это же неперехваченное исключение! Какая красота. Вот тут-то точно статический анализатор мог бы помочь.

С помощью пары запросов поисковику удалось выяснить, что это счётчик для Яндекс.Метрики. Интерпретация страницы просто прекращается после отказа любого внешнего компонента. Как говорится, на разработку было выделено много рублей… Так почему же кидается исключение? В моём браузере было установлено расширение Kaspersky Protect. Отключение разного рода маячков и счётчиков, видимо, входит в защиту от отслеживания, включенного по умолчанию. Это было причиной проблемы. Заказ еды я потом сделал на другом, более технически продвинутом сайте.

К сожалению, эта проблема довольно распространена. Только после этого случая я понял непонятное поведение и других сайтов, которые мне встречались. Надеюсь, у web-разработчиков, попавших на эту статью, опыта прибавится.

ЛК Ростелеком

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Наверное, у каждого россиянина найдётся история «интересного» общения с представителями Ростелекома. Но моя будет про небольшой баг. В поддержке ответили, что так не считают, но программисты прикол поймут.

Скриншот из моего личного кабинета:

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

В базе данных хранится значение NULL, представители Ростелекома считают нормальным выводить это значение на экран. По-моему, это совсем ненормально. Возможно, я просто мыслю как C++ программист, и меня настораживает это значение 😀

Мобильные приложения

РЖД Пассажирам

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

В мобильном приложении РЖД встретилась интересная ошибка.

Скрин из мобильного приложения:

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Параграфы документации хранились в массиве и выводились на экран в обратном порядке. Разработчик что-то напутал с сортировкой или счётчиками циклов в коде. В последней версии приложения этот баг исправлен.

ВТБ-Онлайн

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Это был прекрасный банк с удобным приложением. Но летом 2019 года, видимо, в команду пришёл «эффективный» менеджер, и приложение испортилось. Самым большим преимуществом для меня была удобная и быстрая поддержка. Но летом 2019 года начались эксперименты с ботом в чате поддержки. Этот бот был очень сильно забагован. Как минимум на протяжении 3-х месяцев в чате поддержки был жёсткий рассинхрон. На сообщения никто не отвечал, чат пустовал, а после перезагрузки приложения выяснялось, что чат наполнен сообщениями бота, но они выводились только после перезагрузи. Но тогда сеанс уже закрывался, и со следующим сообщением повторялся тот же самый баг. По электронной почте поддержка ВТБ всегда быстро реагировала, но ничего не делала по существу.

Последней каплей для меня стал ещё один баг в чате поддержки, который до сих пор не исправлен:

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Приложение тупо не загружает скриншоты с телефона, на котором работает приложение. Это Epic Fail. Я отказался от карт банка и свёл оставшиеся активности в банке к минимуму.

Сбербанк Онлайн

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Возможно, самый забагованный банк в России. Среднее время исправления подтверждённого бага по моей многолетней практике – 1 год.

Вот самый вопиющий, на мой взгляд, случай.

При передаче показаний приборов учёта для оплаты жилищно-коммунальных услуг (далее ЖКУ) вас ждёт неприятный сюрприз:

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

что такое баг на сайте. image loader. что такое баг на сайте фото. что такое баг на сайте-image loader. картинка что такое баг на сайте. картинка image loader. Что означает слово «баг»?

Поясню дополнительно: показания ПУ принимаются с точкой, а для ввода на клавиатуре есть только символ «запятая».

Этот баг откровенно мешал пользоваться приложением, и я часто обращался в поддержку за его исправлением. С момента обнаружения баг просуществовал 6 месяцев (февраль-июнь). После чего, в июльском обновлении, его исправили, включив стандартную клавиатуру. Но это не конец истории! В следующем же месяце (август) в очередном обновлении приложения вернули клавиатуру без нужного символа! Я не знаю, что могло произойти в команде разработки, что пришлось делать такой откат изменений, но банком я пользоваться перестал. Это был один из многочисленных багов, и они практически не исправляются.

Связь с поиском ошибок в коде

Появление описанных проблем и ошибок имеет определённые причины. Это недочёты в процессе разработки программ, а также в организации работы сотрудников в целом. От написания кода до доставки приложения пользователю проходит несколько этапов.

Выявленные проблемы – это, в первую очередь, допущение отделов тестирования. В крупных компаниях это обычно большие команды, занимающиеся только тестированием. Но их эффективность может страдать от разных факторов.

Один из важных факторов, ухудшающий работу тестировщиков, – ошибки, которые можно было исправить ещё на этапе написания кода. Обработка найденных багов отнимает время нескольких людей. Но некоторые из них могли бы и не дойти до тестировщиков, что, в свою очередь, сэкономило время тестировщиков. Они бы потратили его на более продуктивное и высокоуровневое тестирование.

Так, наша команда разработчиков анализатора кода PVS-Studio продвигает методологию статического анализа. Это этап разработки программного обеспечения, который стоит перед передачей приложения в отдел тестирования. По нашему опыту, большинство ошибок являются недочётами этапа разработки. И их можно исправить на раннем этапе, сэкономив время и деньги.

К сожалению, в отличие от программ с открытым исходным кодом, тут у меня нет возможности самостоятельно проверить код на наличие ошибок. Но если код написан на C, C++, C# или Java, то этим командам было бы полезно зайти на сайт и прогнать анализатор на своём коде. Для программ с открытым исходным кодом делается очень большой вклад этим инструментом.

Заключение

Замечать баги в используемом программном обеспечении я уже не перестану. Наверное, это не самое страшное, что могло произойти. У меня есть знакомые, которые работают в кинематографе (мультипликация). Так вот они замечают баги при просмотре мультиков, и это доставляет неудобство. По-моему, это даже хуже. Программы хотя бы можно доработать, в отличие от отснятого материала.

Как вы заметили, с поддержкой пользователей совсем всё плохо. Причём это характерно именно для крупных компаний. Им практически невозможно что-то сообщить и поделиться своим опытом. Некоторого успеха я достиг при посещении конференций для разработчиков. Там часто и присутствуют крупные компании, и некоторые вопросы реально можно обсудить и решить.

Если вам понравится новый формат обзоров багов и историй с ними, то я продолжу в том же духе.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *