Для получения триального ключа
заполните форму ниже
Team License (базовая версия)
Enterprise License (расширенная версия)
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
GBP
RUB
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Бесплатная лицензия PVS-Studio для специалистов Microsoft MVP
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Для получения лицензии для вашего открытого
проекта заполните, пожалуйста, эту форму
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Мне интересно попробовать плагин на:
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте папку
Spam/Junk и нажмите на письме кнопку "Не спам".
Так Вы не пропустите ответы от нашей команды.

>
>
PVS-Studio и open-source

PVS-Studio и open-source

09 Апр 2013

Решил написать о работе нашей команды с open-source проектами. Перечислю, какие открытые проекты к данному моменту уже проверены с помощью анализатора PVS-Studio. Расскажу о планах.

Данная статья устарела. Обновляемый список статей о проверенных проектах находится здесь.

Мы хорошо относимся к открытым проектам. Только не забывайте, открытость проекта вовсе не означает, что он разрабатывается исключительно энтузиастами ради всеобщего блага. Многие проекты разрабатываются сотрудниками крупных компаний за зарплату. Люди сидят в офисах с печеньками, программируют и пишут статьи о преимуществах открытого кода.

Я хочу привести в порядок мысли людей, считающих, что раз проект open-source, то за это надо быть обязанным: проверять код, предоставить регистрационный ключ для PVS-Studio. Мы часто так и поступаем, и рады помочь. Но открытость кода, всего лишь означает, что компании по каким-то причинам удобнее этот формат развития проекта. При этом компании легко могут позволить себе приобрести PVS-Studio. Зачем нам отказываться от этого?

Всё, я прекращаю ворчать. Просто несправедливо после проверки такого количества проектов, розданных ключей, получать упрёк, что мы плохо поддерживаем open-source. Список проверенных open-source проектов, проверенных к настоящему времени с помощью PVS-Studio:

Наша команда проверяет проекты не безвозмездно. Заметки о найденных ошибках являются рекламой для нас. Мы этого не скрываем. Но мне кажется это самая полезная реклама, которую вы когда-либо видели! PVS-Studio действительно помогает open-source сообществу.

Возможно, вы заметите, что приведённые статьи сильно различаются по объему. Это объяснимо. Например, при написании первой статьи про ReactOS, в анализаторе было реализовано гораздо меньше правил, чем при второй проверке. За это время, анализатор научился находить в несколько раз больше ошибок. Так что подобные статьи будут становиться со временем всё длиннее. Теперь, нам приходится пропускать множество неубедительных ошибок, чтобы не превращать статью в справочник.

Обо всех найденных ошибках мы уведомляем разработчиков проектов. При этом часто перечисляем больше подозрительных мест, чем описываем в статьях. Мы также предоставляем ключ на некоторое время, чтобы они могли более тщательно проверить проект. Если вы участвуете в open-source проекте, напишите нам. С некоторыми open-source проектами у нас вообще складываются хорошее сотрудничество. Они пишут нам о недостатках в PVS-Studio, предлагают новые правила, а мы предоставляем им ключи. Так что мы совсем не жадные, даже наоборот. Достаточно просто попросить, а не требовать.

Ещё мы предоставляем ключи людям, имеющим статус Microsoft MVP. Правда, что-то так никто и не обращался. Решил напомнить.

Вообще, прошу смелее писать нам. Мы открыты к разным видам сотрудничества. Можем написать совместную статью, провести какое-то исследование. Мы маленькая компания и пока у нас нет бюрократии.

О планах. Мы и далее планируем проверять открытые проекты и писать про это. Попробуем расширить охват. Например, теперь мы можем проверять проекты, собираемые с помощью MinGW. Кстати, пишите нам о проектах, которые стоит проверить. Ограничение - эти проекты должны собираться в Windows. А если более детально, то вот, что мы поддерживаем на данный момент:

  • Visual Studio 2013 - C, C++, C++11, C++/CX (WinRT)
  • Visual Studio 2012 - C, C++, C++11, C++/CX (WinRT)
  • Visual Studio 2010 - C, C++, C++0x
  • Visual Studio 2008 - C, C++
  • Visual Studio 2005 - C, C++
  • Embarcadero RAD Studio XE3 - C, C++, C++11
  • Embarcadero RAD Studio XE2 - C, C++, C++0x
  • Embarcadero RAD Studio XE - C, C++
  • Embarcadero RAD Studio 2010 - C, C++
  • Embarcadero RAD Studio 2009 - C, C++
  • MinGW - C, C++, C++11

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

Популярные статьи по теме
Как и почему статические анализаторы борются с ложными срабатываниями

Дата: 20 Мар 2017

Автор: Андрей Карпов

В своей предыдущей статье я писал, что мне не нравится подход, при котором статические анализаторы кода оцениваются с помощью синтетических тестов. В статье приводился пример, воспринимаемый анализат…
Характеристики анализатора PVS-Studio на примере EFL Core Libraries, 10-15% ложных срабатываний

Дата: 31 Июл 2017

Автор: Андрей Карпов

После большой статьи про проверку операционной системы Tizen мне было задано много вопросов о проценте ложных срабатываний и о плотности ошибок (сколько ошибок PVS-Studio выявляет на 1000 строк кода)…
Главный вопрос программирования, рефакторинга и всего такого

Дата: 14 Апр 2016

Автор: Андрей Карпов

Вы угадали, ответ - "42". Здесь приводится 42 рекомендации по программированию, которые помогут избежать множества ошибок, сэкономить время и нервы. Автором рекомендаций выступает Андрей Карпов - тех…
Эффект последней строки

Дата: 31 Май 2014

Автор: Андрей Карпов

Я изучил множество ошибок, возникающих в результате копирования кода. И утверждаю, что чаще всего ошибки допускают в последнем фрагменте однотипного кода. Ранее я не встречал в книгах описания этого …
Технологии, используемые в анализаторе кода PVS-Studio для поиска ошибок и потенциальных уязвимостей

Дата: 21 Ноя 2018

Автор: Андрей Карпов

Краткое описание технологий, используемых в инструменте PVS-Studio, которые позволяют эффективно обнаруживать большое количество паттернов ошибок и потенциальных уязвимостей. Статья описывает реализа…
PVS-Studio для Java

Дата: 17 Янв 2019

Автор: Андрей Карпов

В седьмой версии статического анализатора PVS-Studio мы добавили поддержку языка Java. Пришло время немного рассказать, как мы начинали делать поддержку языка Java, что у нас получилось и какие дальн…
Как PVS-Studio оказался внимательнее, чем три с половиной программиста

Дата: 22 Окт 2018

Автор: Андрей Карпов

PVS-Studio, как и другие статические анализаторы кода, часто выдаёт ложные срабатывания. Но не стоит спешить считать странные срабатывания ложными. Это короткая история о том, как PVS-Studio вновь ок…
Зло живёт в функциях сравнения

Дата: 19 Май 2017

Автор: Андрей Карпов

Возможно, читатели помнят мою статью под названием "Эффект последней строки". В ней идёт речь о замеченной мной закономерности: ошибка чаще всего допускается в последней строке однотипных блоков текс…
Бесплатный PVS-Studio для тех, кто развивает открытые проекты

Дата: 22 Дек 2018

Автор: Андрей Карпов

В канун празднования нового 2019 года команда PVS-Studio решила сделать приятный подарок всем контрибьюторам open-source проектов, хостящихся на GitHub, GitLab или Bitbucket. Им предоставляется возмо…
Любите статический анализ кода!

Дата: 16 Окт 2017

Автор: Андрей Карпов

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

Комментарии (0)

Следующие комментарии
Этот сайт использует куки и другие технологии, чтобы предоставить вам более персонализированный опыт. Продолжая просмотр страниц нашего веб-сайта, вы принимаете условия использования этих файлов. Если вы не хотите, чтобы ваши данные обрабатывались, пожалуйста, покиньте данный сайт. Подробнее →
Принять