В гостях у «Битовых масок» — Андрей Карпов и Юрий Минаев из PVS-Studio.
Андрей более 15 лет занимается статическим анализом кода, изучает качество программного обеспечения и пишет статьи и книги о программировании на С++. Юрий, архитектор C++ анализатора PVS-Studio, глубинно дописывает и переписывает парсер и прочие внутренности C++ анализатора.
Статический анализ кода. Виды анализа и диагностики. Поиск кадров в регионах
Статический анализ кода. Виды анализа и диагностики. Поиск кадров в регионах
Где послушать:
В новом выпуске инженеры рассказывают о том, с чего начиналась разработка статического анализатора PVS-Studio и как работает команда сегодня.
Как устроен статический анализ и в чем главные отличия от линтера и фронтенда компилятора? Почему PVS-Studio не использует LLVM? Для каких диагностик важен Data-Flow анализ и насколько тяжело пока обходиться без CFG? Что нужно знать и уметь, чтобы попасть на работу в PVS-Studio? Что регулирует ГОСТ на статический анализ и правда ли он помогает в построении процессов? Разбираемся в этих вопросах в пятнадцатом выпуске «Битовых масок».
Смотрите выпуски подкаста и на нашем Rutube-канале
И подписывайтесь на Telegram-канал подкаста!
- 00:00:00 — Тизер
- 00:01:08 — Представление Андрея и Юрия
- 00:02:28 — Знакомство с программированием
- 00:06:50 — Поиск кадров в Туле
- 00:18:12 — С чего началась работа PVS-Studio
- 00:22:08 — Как Юрий пришел в разработку статических анализаторов
- 00:23:33 — Конкуренты PVS-Studio
- 00:25:15 — Статистический анализ
- 00:26:45 — Сравнение с clang-tidy
- 00:27:44 — Почему не используется LLVM
- 00:29:31 — Любимые и нелюбимые компиляторы
- 00:32:02 — Еще причины не использовать LLVM
- 00:33:44 — Ошибки в компиляторах
- 00:35:10 — Как компиляторы уменьшают количество ошибок
- 00:36:36 — Проблема с лямбда-функцией
- 00:37:48 — Стоит ли проверять все варианты компиляторов
- 00:39:59 — Разница между компилятором и статическим анализатором
- 00:41:13 — Этапы статического анализа и дополнительная метаинформация
- 00:47:53 — Перенос диагностик из статического анализа в компиляторы
- 00:51:06 — Сравнение с другими статическими анализаторами
- 00:54:31 — Внутреннее устройство PVS-Studio и самые сложные части
- 01:05:17 — Что можно улучшить в C++ и почему PVS-Studio написан на C++
- 01:08:51 — Диагностики в PVS-Studio
- 01:13:53 — Межпроцедурный и межмодульный анализы
- 01:15:22 — Data-Flow анализ
- 01:24:12 — ГОСТ на статический анализ кода
- 01:29:59 — Undefined behavior
- 01:34:52 — Появятся ли новые ошибки при обновлении компилятора
- 01:36:46 — Статический анализ для встраиваемого ПО
- 01:40:48 — Работа со сторонними библиотеками
- 01:45:05 — Диагностики для оптимизации кода
- 01:51:51 — Диагностики, специфичные для архитектуры
- 01:52:55 — Удаленные диагностики
- 01:54:06 — Планы на будущее PVS-Studio
- 01:55:28 — Заключение
Будь первым, кто оставит комментарий