SlideShare ist ein Scribd-Unternehmen logo
1 von 14
СТАТИЧЕСКИЙ
АНАЛИЗАТОР КОДА
PVS-STUDIO
Доклад о пройденной стажировке.
Автор: Штукарев Игорь
В современном мире статические
анализаторы кода играют большое
значение для организаций,
занимающихся созданием и
поддержкой программ.
2
Компании, не использующие статический
анализатор постоянно сталкиваются с
ошибками в коде, которые можно было легко
избежать ещё на этапе кодирования.
Использование PVS-Studio позволяет
уменьшить количество ошибок и сократить
расходы на устранение дефектов.
3
Что такое PVS-Studio?
PVS-Studio – статический
анализатор кода для С и С++
программ. Статические
анализаторы упрощают
написание кода, находя ошибки
и помогая исправлять их.
4
Почему именно PVS-Studio?
Анализатор PVS-Studio имеет большую базу
диагностик и поможет выявить ошибки в вашем
коде, а встроенная справка для каждого
предупреждения поможет исправить их.
5
Почему именно PVS-Studio?
PVS-Studio реализован
как плагин к Visual Studio,
удобен в использовании
и не требует
специальных настроек
после установки.
6
Почему именно PVS-Studio?
С помощью интерактивных фильтров и
системы разбиения предупреждений на
уровни вы сможете сосредоточиться на
самых важных ошибках и игнорировать
неинтересные предупреждения.
7
Почему именно PVS-Studio?
Благодаря модулю Standalone, PVS-Studio доступен не только
пользователям Visual Studio, но и людям, которые собирают
свои проекты с помощью компиляторов mingw-gcc, clang или
borland (Embarcadero) C++ любыми сборочными средами, как
MSBuild, GNU Make, NMake, CMake, ninja и т.п.
8
Почему именно PVS-Studio?
Старые ошибки в коде могут обрастать
зависимостями, из-за которых их исправление
становится все труднее и труднее.
Используя анализатор, программист выявит
ошибку на самом первом этапе написания
кода и не позволит попасть ей в продакшн.
9
Почему именно PVS-Studio?
Хотите перенести 32-битное приложение на
64-битную платформу? Просто включите 64-
битные диагностики и анализатор укажет вам
на все использования типов со специфичным
размером для 32-битных платформ.
10
Люди, работающие в компании,
которая использует статический
анализатор PVS-Studio, тратят свое
время на улучшение продукта и
написание нового функционала, а
не на поиск ошибок в старом коде.
11
Менеджеры компаний, использующих анализатор
PVS-Studio могут похвастаться не только
продуктивностью своих программистов, но и
качеством и безопасностью продукта.
12
Используя наш анализатор, вы сведете на
минимум жалобы о неработоспособности
программы, а ваши пользователи больше не
будут заниматься тестированием вашего
продукта.
13
Отзывчивая команда
PVS-Studio в любое время
поможет с
возникающими
вопросами по поводу
использования продукта.
14

Weitere ähnliche Inhalte

Was ist angesagt?

Как мы тестируем анализатор кода
Как мы тестируем анализатор кодаКак мы тестируем анализатор кода
Как мы тестируем анализатор кодаTatyanazaxarova
 
PVS-Studio научился следить за тем, как вы программируете
PVS-Studio научился следить за тем, как вы программируетеPVS-Studio научился следить за тем, как вы программируете
PVS-Studio научился следить за тем, как вы программируетеTatyanazaxarova
 
Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...
Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...
Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...Tatyanazaxarova
 
Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...
Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...
Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...7bits
 
Регулярное использование статического анализа кода в командной разработке
Регулярное использование статического анализа кода в командной разработкеРегулярное использование статического анализа кода в командной разработке
Регулярное использование статического анализа кода в командной разработкеTatyanazaxarova
 
Построение процесса тестирования
Построение процесса тестированияПостроение процесса тестирования
Построение процесса тестированияAlexander Byndyu
 
сергей андреев
сергей андреевсергей андреев
сергей андреевAlexei Lupan
 
Спецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версийСпецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версий7bits
 
Специализированная аппаратура ВЧ связи для РЗ и ПА
Специализированная аппаратура ВЧ связи для РЗ и ПАСпециализированная аппаратура ВЧ связи для РЗ и ПА
Специализированная аппаратура ВЧ связи для РЗ и ПАООО "Прософт-Системы"
 
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестированияQA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестированияQAFest
 
CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...
CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...
CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...CodeFest
 
Преимущества использования Viva64
Преимущества использования Viva64Преимущества использования Viva64
Преимущества использования Viva64Tatyanazaxarova
 
Модульное тестирование и TDD в .NET
Модульное тестирование и TDD в .NETМодульное тестирование и TDD в .NET
Модульное тестирование и TDD в .NETAlexander Byndyu
 
Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...
Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...
Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...7bits
 
5 колчинская
5 колчинская 5 колчинская
5 колчинская qasib
 

Was ist angesagt? (20)

Lektsia 7
Lektsia 7Lektsia 7
Lektsia 7
 
Как мы тестируем анализатор кода
Как мы тестируем анализатор кодаКак мы тестируем анализатор кода
Как мы тестируем анализатор кода
 
PVS-Studio научился следить за тем, как вы программируете
PVS-Studio научился следить за тем, как вы программируетеPVS-Studio научился следить за тем, как вы программируете
PVS-Studio научился следить за тем, как вы программируете
 
Как работать с legacy проектом, которому больше10 лет? |Денис Воскобойник
Как работать с legacy проектом, которому больше10 лет? |Денис ВоскобойникКак работать с legacy проектом, которому больше10 лет? |Денис Воскобойник
Как работать с legacy проектом, которому больше10 лет? |Денис Воскобойник
 
Software Development
Software DevelopmentSoftware Development
Software Development
 
Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...
Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...
Использование анализатора PVS-Studio в процессе инкрементальной сборки в Micr...
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...
Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...
Спецкурс-2015. Занятие 04 (часть 1). Конфигурации, сборка проекта, автоматизи...
 
Регулярное использование статического анализа кода в командной разработке
Регулярное использование статического анализа кода в командной разработкеРегулярное использование статического анализа кода в командной разработке
Регулярное использование статического анализа кода в командной разработке
 
Построение процесса тестирования
Построение процесса тестированияПостроение процесса тестирования
Построение процесса тестирования
 
сергей андреев
сергей андреевсергей андреев
сергей андреев
 
Спецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версийСпецкурс-2015. Занятие 05. Системы контроля версий
Спецкурс-2015. Занятие 05. Системы контроля версий
 
Специализированная аппаратура ВЧ связи для РЗ и ПА
Специализированная аппаратура ВЧ связи для РЗ и ПАСпециализированная аппаратура ВЧ связи для РЗ и ПА
Специализированная аппаратура ВЧ связи для РЗ и ПА
 
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестированияQA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
QA Fest 2016. Денис Яременко. Как облегчить процесс мобильного тестирования
 
CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...
CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...
CodeFest 2010. Уразов А. — Quality-Oriented Programming (Программирование, ор...
 
Преимущества использования Viva64
Преимущества использования Viva64Преимущества использования Viva64
Преимущества использования Viva64
 
Модульное тестирование и TDD в .NET
Модульное тестирование и TDD в .NETМодульное тестирование и TDD в .NET
Модульное тестирование и TDD в .NET
 
WebAssembly and Blazor
WebAssembly and BlazorWebAssembly and Blazor
WebAssembly and Blazor
 
Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...
Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...
Спецкурс-2015. Занятие 04 (часть 2). Обработка исключительных ситуаций, запи...
 
5 колчинская
5 колчинская 5 колчинская
5 колчинская
 

Ähnlich wie Статический анализатор кода PVS-Studio

Урок 8. Статический анализ для выявления 64-битных ошибок
Урок 8. Статический анализ для выявления 64-битных ошибокУрок 8. Статический анализ для выявления 64-битных ошибок
Урок 8. Статический анализ для выявления 64-битных ошибокTatyanazaxarova
 
Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...
Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...
Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...Tatyanazaxarova
 
Проблемы тестирования 64-битных приложений
Проблемы тестирования 64-битных приложенийПроблемы тестирования 64-битных приложений
Проблемы тестирования 64-битных приложенийTatyanazaxarova
 
Облегчаем процесс разработки с помощью статического анализа кода: Наш опыт
Облегчаем процесс разработки с помощью статического анализа кода: Наш опытОблегчаем процесс разработки с помощью статического анализа кода: Наш опыт
Облегчаем процесс разработки с помощью статического анализа кода: Наш опытAndrey Karpov
 
Изменения в инфраструктуре инструментов для программистов
Изменения в инфраструктуре инструментов для программистовИзменения в инфраструктуре инструментов для программистов
Изменения в инфраструктуре инструментов для программистовTatyanazaxarova
 
Применение статического анализа кода в преподавании и в разработке свободного ПО
Применение статического анализа кода в преподавании и в разработке свободного ПОПрименение статического анализа кода в преподавании и в разработке свободного ПО
Применение статического анализа кода в преподавании и в разработке свободного ПОAndrey Karpov
 
Урок 7. Проблемы выявления 64-битных ошибок
Урок 7. Проблемы выявления 64-битных ошибокУрок 7. Проблемы выявления 64-битных ошибок
Урок 7. Проблемы выявления 64-битных ошибокTatyanazaxarova
 
статические анализаторы кода за и против
статические анализаторы кода  за и противстатические анализаторы кода  за и против
статические анализаторы кода за и противRoman Kalita
 
Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...
Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...
Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...Tatyanazaxarova
 
Разработка ресурсоемких приложений в среде Visual C++
Разработка ресурсоемких приложений в среде Visual C++Разработка ресурсоемких приложений в среде Visual C++
Разработка ресурсоемких приложений в среде Visual C++Tatyanazaxarova
 
Что нового в Visual Studio 2013
Что нового в Visual Studio 2013Что нового в Visual Studio 2013
Что нового в Visual Studio 2013GetDev.NET
 
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...Andrey Prozorov, CISM, CIPP/E, CDPSE. LA 27001
 
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
 
Статический анализ кода для верификации 64-битных приложений
Статический анализ кода для верификации 64-битных приложенийСтатический анализ кода для верификации 64-битных приложений
Статический анализ кода для верификации 64-битных приложенийTatyanazaxarova
 
Непрерывная интеграция при разработке баз данных. (Show version)
Непрерывная интеграция при разработке баз данных. (Show version)Непрерывная интеграция при разработке баз данных. (Show version)
Непрерывная интеграция при разработке баз данных. (Show version)Vladimir Bakhov
 
Юрий Василевский "Автоматизация в XCode"
Юрий Василевский "Автоматизация в XCode"Юрий Василевский "Автоматизация в XCode"
Юрий Василевский "Автоматизация в XCode"Yandex
 
Юрий Василевский «Автоматизация в XCode»
Юрий Василевский «Автоматизация в XCode»Юрий Василевский «Автоматизация в XCode»
Юрий Василевский «Автоматизация в XCode»Yandex
 

Ähnlich wie Статический анализатор кода PVS-Studio (20)

Урок 8. Статический анализ для выявления 64-битных ошибок
Урок 8. Статический анализ для выявления 64-битных ошибокУрок 8. Статический анализ для выявления 64-битных ошибок
Урок 8. Статический анализ для выявления 64-битных ошибок
 
Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...
Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...
Поиск ловушек в Си/Си++ коде при переносе приложений под 64-битную версию Win...
 
Проблемы тестирования 64-битных приложений
Проблемы тестирования 64-битных приложенийПроблемы тестирования 64-битных приложений
Проблемы тестирования 64-битных приложений
 
Облегчаем процесс разработки с помощью статического анализа кода: Наш опыт
Облегчаем процесс разработки с помощью статического анализа кода: Наш опытОблегчаем процесс разработки с помощью статического анализа кода: Наш опыт
Облегчаем процесс разработки с помощью статического анализа кода: Наш опыт
 
Изменения в инфраструктуре инструментов для программистов
Изменения в инфраструктуре инструментов для программистовИзменения в инфраструктуре инструментов для программистов
Изменения в инфраструктуре инструментов для программистов
 
Применение статического анализа кода в преподавании и в разработке свободного ПО
Применение статического анализа кода в преподавании и в разработке свободного ПОПрименение статического анализа кода в преподавании и в разработке свободного ПО
Применение статического анализа кода в преподавании и в разработке свободного ПО
 
Урок 7. Проблемы выявления 64-битных ошибок
Урок 7. Проблемы выявления 64-битных ошибокУрок 7. Проблемы выявления 64-битных ошибок
Урок 7. Проблемы выявления 64-битных ошибок
 
Листовка Model studio CS
Листовка Model studio CSЛистовка Model studio CS
Листовка Model studio CS
 
статические анализаторы кода за и против
статические анализаторы кода  за и противстатические анализаторы кода  за и против
статические анализаторы кода за и против
 
Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...
Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...
Трепещи, мир! Мы выпустили PVS-Studio 4.00 с бесплатным анализатором общего н...
 
Разработка ресурсоемких приложений в среде Visual C++
Разработка ресурсоемких приложений в среде Visual C++Разработка ресурсоемких приложений в среде Visual C++
Разработка ресурсоемких приложений в среде Visual C++
 
Что нового в Visual Studio 2013
Что нового в Visual Studio 2013Что нового в Visual Studio 2013
Что нового в Visual Studio 2013
 
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
 
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
 
QAFest. Роль тестирования в Devops
QAFest. Роль тестирования в DevopsQAFest. Роль тестирования в Devops
QAFest. Роль тестирования в Devops
 
Статический анализ кода для верификации 64-битных приложений
Статический анализ кода для верификации 64-битных приложенийСтатический анализ кода для верификации 64-битных приложений
Статический анализ кода для верификации 64-битных приложений
 
Непрерывная интеграция при разработке баз данных. (Show version)
Непрерывная интеграция при разработке баз данных. (Show version)Непрерывная интеграция при разработке баз данных. (Show version)
Непрерывная интеграция при разработке баз данных. (Show version)
 
Agile & .net
Agile & .netAgile & .net
Agile & .net
 
Юрий Василевский "Автоматизация в XCode"
Юрий Василевский "Автоматизация в XCode"Юрий Василевский "Автоматизация в XCode"
Юрий Василевский "Автоматизация в XCode"
 
Юрий Василевский «Автоматизация в XCode»
Юрий Василевский «Автоматизация в XCode»Юрий Василевский «Автоматизация в XCode»
Юрий Василевский «Автоматизация в XCode»
 

Статический анализатор кода PVS-Studio

  • 1. СТАТИЧЕСКИЙ АНАЛИЗАТОР КОДА PVS-STUDIO Доклад о пройденной стажировке. Автор: Штукарев Игорь
  • 2. В современном мире статические анализаторы кода играют большое значение для организаций, занимающихся созданием и поддержкой программ. 2
  • 3. Компании, не использующие статический анализатор постоянно сталкиваются с ошибками в коде, которые можно было легко избежать ещё на этапе кодирования. Использование PVS-Studio позволяет уменьшить количество ошибок и сократить расходы на устранение дефектов. 3
  • 4. Что такое PVS-Studio? PVS-Studio – статический анализатор кода для С и С++ программ. Статические анализаторы упрощают написание кода, находя ошибки и помогая исправлять их. 4
  • 5. Почему именно PVS-Studio? Анализатор PVS-Studio имеет большую базу диагностик и поможет выявить ошибки в вашем коде, а встроенная справка для каждого предупреждения поможет исправить их. 5
  • 6. Почему именно PVS-Studio? PVS-Studio реализован как плагин к Visual Studio, удобен в использовании и не требует специальных настроек после установки. 6
  • 7. Почему именно PVS-Studio? С помощью интерактивных фильтров и системы разбиения предупреждений на уровни вы сможете сосредоточиться на самых важных ошибках и игнорировать неинтересные предупреждения. 7
  • 8. Почему именно PVS-Studio? Благодаря модулю Standalone, PVS-Studio доступен не только пользователям Visual Studio, но и людям, которые собирают свои проекты с помощью компиляторов mingw-gcc, clang или borland (Embarcadero) C++ любыми сборочными средами, как MSBuild, GNU Make, NMake, CMake, ninja и т.п. 8
  • 9. Почему именно PVS-Studio? Старые ошибки в коде могут обрастать зависимостями, из-за которых их исправление становится все труднее и труднее. Используя анализатор, программист выявит ошибку на самом первом этапе написания кода и не позволит попасть ей в продакшн. 9
  • 10. Почему именно PVS-Studio? Хотите перенести 32-битное приложение на 64-битную платформу? Просто включите 64- битные диагностики и анализатор укажет вам на все использования типов со специфичным размером для 32-битных платформ. 10
  • 11. Люди, работающие в компании, которая использует статический анализатор PVS-Studio, тратят свое время на улучшение продукта и написание нового функционала, а не на поиск ошибок в старом коде. 11
  • 12. Менеджеры компаний, использующих анализатор PVS-Studio могут похвастаться не только продуктивностью своих программистов, но и качеством и безопасностью продукта. 12
  • 13. Используя наш анализатор, вы сведете на минимум жалобы о неработоспособности программы, а ваши пользователи больше не будут заниматься тестированием вашего продукта. 13
  • 14. Отзывчивая команда PVS-Studio в любое время поможет с возникающими вопросами по поводу использования продукта. 14