Все потоки
Поиск
Написать публикацию
Обновить
209.93
PVS-Studio
Статический анализ кода для C, C++, C# и Java
Сначала показывать

Дюжина ошибок мессенджера Telegram

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров12K

Все мы знаем, что такое Telegram. Наверняка и вы, читатель, им пользуетесь. Как и в любом другом проекте, в коде Telegram тоже есть баги, и, если вы программист, эта статья специально для вас! Мы проверили исходный код мессенджера и готовы поделиться с вами интересными находками.

Читать далее

YYYY? yyyy!

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров8.1K

Знаете ли вы, в чём разница между 'Y' и 'y' символами в паттерне даты в Java? В этой статье мы рассмотрим, как неправильное форматирование даты может привести к ошибке, а также расскажем вам про нашу новую диагностику V6122 для языка Java, которая убережёт вас от внезапных путешествий во времени.

Читать далее

Что нового в .NET 9?

Время на прочтение5 мин
Количество просмотров20K

.NET 9 вышел в релиз, и значит, можно начинать переносить свои проекты на новую версию. В этой статье мы рассмотрим новые улучшения и фишки .NET: C# 13, производительность, BuildCheck, GC, LINQ, NuGet Audit и прочее.

Читать далее

DPDK: 100 больших и маленьких багов

Уровень сложностиСредний
Время на прочтение34 мин
Количество просмотров2.6K

100 багов в DPDK


В своей обители в Р'лайхе мёртвый Ктулху спит в ожидании своего часа. А в C коде проекта DPDK спит множество ошибок, и тоже в ожидании своего часа. Давайте посмотрим, какие из них может выявить анализатор PVS-Studio.

Читать дальше →

Обновляем мерч: шо, опять?

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.9K

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

Читать далее

.NET Digest #4

Время на прочтение5 мин
Количество просмотров3.7K

Добро пожаловать на четвёртый выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! В этот раз набралось множество новостей, и команда PVS-Studio рада представить вам подборку самых интересных и полезных материалов. Поехали!

Читать далее

Поиск ошибок в юнит-тестах

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров2.1K

Вы должны были бороться с ошибками


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

Читать дальше →

Игровое поле экспериментов: какие ошибки могут подстерегать программиста при создании эмулятора

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров2.8K

Создание эмулятора для игр Xbox 360 на ПК — задача не из простых, и на каждом шагу можно столкнуться с коварными багами. Сегодня рассмотрим типичные проблемы, которые можно обнаружить при разработке, на примере проекта Xenia.

Читать далее

Использование статических анализаторов кода при разработке безопасного ПО

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.5K

Как часто анализировать проект? Сколько анализаторов использовать? Как размечать полученные предупреждения? Отвечаем на эти и другие вопросы, разбираясь в подробностях свежего ГОСТ Р 71207–2024, посвящённого статическому анализу.

Читать далее

Самая красивая ошибка, которую я нашёл с помощью PVS-Studio в 2024 году

Время на прочтение8 мин
Количество просмотров8.2K

Красивый баг


Сразу предупреждаю, мои вкусы очень специфичны. Красота ошибки в том, что человеку её очень сложно найти. Я не верю, что её можно заметить при обзоре кода. Если только заранее знать, что она есть, и искать её целенаправленно.


Ошибку я нашёл в проекте DPDK. В нём есть и другие ошибки, но про них потом. Они меркнут перед этим алмазом. Только не ждите чего-то эдакого. Ошибка проста до безобразия. Вот только найти её, просматривая код, ой как непросто. Собственно, попробуйте сами.

Читать дальше →

Поймай уязвимость своими руками: пользовательские аннотации C# кода

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.6K

Думаю, для многих не секрет, что уязвимости в проекте могут оказать на него крайне негативное влияние. Существует ряд способов по борьбе с уязвимостями, начиная с ручного поиска и заканчивая использованием специализированных инструментов. Об одном из таких инструментов пойдёт речь в статье.

Читать далее

Обзор нововведений в C# 13

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров18K

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

Читать далее

Что нового в Unity 6? Обзор нововведений и ошибок в исходном коде

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров17K

Наконец, состоялся релиз Unity 6! Разработчики называют эту версию самой стабильной версией за всё время существования движка. Почему бы нам не убедиться в этом с помощью статического анализатора кода? А заодно проведём краткий обзор основных фич и улучшений, привнесённых обновлением.

Читать далее

Скажем нет «Превращению», или анализ Kafka

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров4.3K

Бывало ли вам интересно, какие баги может таить исходный код проектов, которыми пользуются большие компании по всему миру? Не упустите шанс познакомиться с интересными ошибками, которые нашёл статический анализатор PVS-Studio в исходном коде Open Source проекта Apache Kafka.

Читать далее

Исходный код на прощание: разбор ошибок в проектах закрывшейся инди-студии

Время на прочтение7 мин
Количество просмотров12K

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

Читать далее

Что нового в PVS-Studio для Unreal Engine?

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.7K

Статический анализатор PVS-Studio постоянно совершенствуется для повышения эффективности анализа кода. В этой статье мы расскажем о последних обновлениях анализатора, которые существенно улучшают анализ проектов на основе Unreal Engine.

Читать далее

PPSSPP или всё же psp? Смотрим баги в коде из будущего

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров8.2K

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

Читать далее

SafeCode – конференция, которой мне не хватало

Время на прочтение3 мин
Количество просмотров3.1K

Умиление


Помню 100500 лет назад (ну ладно, всего 12), я писал на Хабре, что мне не хватает в России хардкорной C++ конференции. Затем появилась C++Russia. Навизуализировал.


Пару лет назад я начал грустить, что нет подходящей конференции на тему безопасности. Статью на эту тему я не писал, но желание исполнилось и даже побыстрее, чем с C++. Хочу познакомить вас с конференцией SafeCode.

Читать дальше →

Пользовательские аннотации кода для PVS-Studio

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров667

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

Читать далее

Анализ кода WolvenKit: что нужно знать перед созданием модов для Cyberpunk 2077

Время на прочтение8 мин
Количество просмотров1.7K

Все мы любим игры, но есть люди, которые любят в них не только играть, но ещё и создавать различные модификации для них. Сегодня посмотрим на WolvenKit — один из инструментов для создания модов для Cyberpunk 2077.

Читать далее

Информация

Сайт
pvs-studio.ru
Дата регистрации
Дата основания
2008
Численность
51–100 человек
Местоположение
Россия
Представитель
Андрей Карпов