Рубрика «ошибки в коде»

Игра PVS-Studio: найди ошибку в C++ коде
Авторы анализатора PVS-Studio предлагают вам проверить свою внимательность и развлечься. Попробуйте быстро отыскать баг в фрагменте исходного кода и ткнуть в него мышкой.

Читать полностью »

Иногда аварии, чтобы она запомнилась надолго, не надо быть техногенкой с кучей жертв. Именно так случилось в январе 2012 года, когда на калифорнийской АЭС Сан-Онофре произошла утечка радиоактивной воды из первого контура в парогенераторе. Авария неприятная, но она не привела к значимому повышению радиационного фона и если бы не её косвенные последствия, то прошла бы в отчётах МАГАТЭ и NRC (американский атомный регулятор), как незначительное происшествие. Проблема была в том, что устранить её быстро было невозможно, а без парогенератора энергоблок требовалось отправить в простой. И это лишь начало истории.

Ошибка в коде, стоившая целой АЭС - 1
Читать полностью »

Помогите, у меня лапки
Я пишу статьи, посвященные написанию качественного кода и про поиск ошибок с помощью инструментов статического анализа. Однообразие наскучивает, хочется пошалить. А давайте все вместе напишем статью "100 вредных советов для С++ программиста". Я начну, а вы подхватите.

Читать полностью »

PVS-Studio и LLVM 13
Задача коммерческих статических анализаторов выполнять более глубокий и полный анализ кода, чем компиляторы. Давайте посмотрим, что смог обнаружить PVS-Studio в исходном коде проекта LLVM 13.0.0.

Читать полностью »

Новая Си++ диагностика для PVS-Studio

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

Читать полностью »

Допустим, у нас есть сайт с товарами. У нас есть метод Product::getProducts — возвращает массив товаров.

Затем к нам пришел менеджер и сказал: хотим сделать акции на сайте (скидки, распродажи). В каждой акции будут прикреплены товары. Мы написали метод Action::getProductsByActionId(actionId)

Затем к нам снова пришел менеджер и сказал что нужны еще статьи, к которым прикреплены товары. Добавим метод Article::getProductsByArticleId(arcticleId).

Вы скажите — давайте сделаем 1 метод с параметрами. Ок, мы до этого дойдем.

И тут внимание: Читать полностью »

image1.png

Планировалось, что, написав статью "Обидно за мнения про статические анализаторы кода", мы выговоримся и спокойно отпустим тему. Но неожиданно эта статья вызвала бурный отклик. К сожалению, обсуждение пошло не туда, и сейчас мы сделаем вторую попытку объяснить своё видение ситуации.
Читать полностью »

memcpy

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

Всем привет! Вдохновленные успехом предыдущей статьи, которая была написана в преддверии запуска курса "Fullstack разработчик JavaScript", мы решили продолжить серию статей для новичков и всех тех, кто только начинает заниматься программированием на языке JavaScript. Cегодня мы поговорим об ошибках, которые случаются в JS, а также о том, как именно с ними бороться.

Ошибки в JavaScript: исправляем, обрабатываем, чиним - 1

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

Неизвестный тимлид

Читать полностью »

Picture 2

Уже стало традицией, что программисты, пополняющие команду PVS-Studio, начинают свою деятельность с написания статьи про анализ проекта с открытым исходным кодом. В этот раз таким проверенным проектом станет Telerik UI for UWP.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js