- PVSM.RU - https://www.pvsm.ru -
Программисты допускают невероятное количество опечаток, простых логических ляпов и делают ошибки благодаря Copy-Paste. Приглашаю отпробовать их. Приятного аппетита.
Программисты часто думают, что ошибки, отнимающие больше всего времени очень сложные и коварные. А простые ошибки они не делают.
Это конечно не так. Делают, и в сумме тратят на их исправление огромное количество времени и сил. Просто мелкие ошибки не запоминаются. Гораздо лучше запомнится эпическое сражение с ошибкой синхронизации, отнявшей целый день. Да, сложные ошибки тоже могут отнимать много времени. Главное, что суммарный вред от мелких ошибок тоже может быть огромен. Подробнее эта мысль изложена в заметке: Миф второй – профессиональные разработчики не допускают глупых ошибок [1].
Проверяя различные проекты с помощью PVS-Studio, я пополняю базу найденных ошибок. Сейчас я выбрал те диагностические сообщения, которые выявляют: ляпы, опечатки и неправильный Copy-Paste. Читайте и ужасайтесь:
Это далеко не все глупые ошибки, но наиболее показательные. Желаю приятного просмотра. Весь список примеров находится здесь [13].
Автор: Andrey2008
Источник [14]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/pvs-studio/37521
Ссылки в тексте:
[1] Миф второй – профессиональные разработчики не допускают глупых ошибок: http://www.viva64.com/ru/b/0116/
[2] Copy-Paste и опечатки в условиях: http://www.viva64.com/ru/examples-V501/
[3] Путаница с приоритетами операций: http://www.viva64.com/ru/examples-V502/
[4] Одинаковые «if» из-за Copy-Paste: http://www.viva64.com/ru/examples-V517/
[5] Вредные опечатки: http://www.viva64.com/ru/examples-V519/
[6] Бессмысленные «if» из-за скопированных блоков: http://www.viva64.com/ru/examples-V523/
[7] Функции, изготовленные с помощью Copy-Paste: http://www.viva64.com/ru/examples-V524/
[8] Лишние точки с запятой ";": http://www.viva64.com/ru/examples-V529/
[9] Глупые ошибки, такие как проверка: unsigned переменная < 0: http://www.viva64.com/ru/examples-V547/
[10] Путать & и && — легко: http://www.viva64.com/ru/examples-V560/
[11] Как легко спутать длину строки и размер указателя: http://www.viva64.com/ru/examples-V579/
[12] Проверка указателей, сделанная «для галочки»: http://www.viva64.com/ru/examples-V595/
[13] здесь: http://www.viva64.com/ru/examples/
[14] Источник: http://habrahabr.ru/post/184848/
Нажмите здесь для печати.