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

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

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

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

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

** На сайте установлена reCAPTCHA и применяются
Политика конфиденциальности и Условия использования Google.
Ваше сообщение отправлено.

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


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

>
>
Как использовать PVS-Studio бесплатно

Как использовать PVS-Studio бесплатно

30 Ноя 2016

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

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

0457_PVS-Studio_Free_ru/image1.png

Введение

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

Думаю, что наш провал с CppCat был предопределён. Мир диктует свои законы и, например, тот же Coverity ориентирован на корпоративные лицензии. Однако это не значит, что нужно исключать другие варианты взаимодействия с миром.

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

Стоит пояснить нашу позицию. Впрочем, если вам не терпится, вы можете сразу перейти к разделу "Бесплатная лицензия PVS-Studio". Если же читателю интересно узнать подробности, то предлагаю продолжить чтение.

Размышления

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

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

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

Решение было найдено интуитивно. Что отличает корпоративные проекты от проектов энтузиастов? В корпоративных проектах меньше свободы и больше бюрократии. Вряд ли руководство компании Microsoft будет радо, если разработчик в коде Microsoft Office напишет, что это его персональный проект. Этим надо воспользоваться и предлагать вносить в код правки, в которых упоминается PVS-Studio. Заодно код открытых проектов будет рекламировать PVS-Studio.

Бесплатная лицензия PVS-Studio

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

Шаг 1

Если вы используете PVS-Studio как плагин к Visual Studio или используете утилиту "C and C++ Compiler Monitoring UI" (Standalone.exe), то введите следующий лицензионный ключ:

Name: PVS-Studio Free

Key: FREE-FREE-FREE-FREE

Если Вы используете PVS-Studio for Linux/macOS, то воспользуйтесь командой:

pvs-studio-analyzer credentials PVS-Studio Free FREE-FREE-FREE-FREE

Примечание. Ранее для активации бесплатной лицензии для Linux-версии было достаточно только комментария. Теперь требуется вводить и этот специальный ключ, так как без него некоторые сценарии использования анализатора оказались неудобными. Подробнее.

Шаг 2

Внесите правки во все компилируемые файлы вашего проекта. Имеются в виду файлы с расширениями c, cc, cpp, cs и так далее. Заголовочные h-файлы менять не требуется.

Вы должны вписать в начало каждого файла две строки с комментарием. Мы предоставляем на выбор несколько вариантов. Это своего рода плата за возможность бесплатного использования анализатора PVS-Studio.

Комментарии для студентов (академическая лицензия):

// This is a personal academic project. Dear PVS-Studio, please check it.

// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com

Комментарии для открытых бесплатных проектов:

// This is an open source non-commercial project. Dear PVS-Studio, please check it.

// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com

Комментарии для индивидуальных разработчиков:

// This is an independent project of an individual developer. Dear PVS-Studio, please check it.

// PVS-Studio Static Code Analyzer for C, C++, C#, and Java: http://www.viva64.com

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

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

Примечание 2. Существуют и другие варианты бесплатного лицензирования. Например, существует возможность бесплатного использования PVS-Studio для тех, кто участвует в развитии открытых проектов.

Автоматизация

Если в вашем проекте много файлов, то вы можете воспользоваться вспомогательной утилитой. Вы должны будете указать ей какой комментарий вставлять и каталог с кодом. Затем утилита рекурсивно обойдет все файлы в папке и вложенных папках, добавляя в файлы с исходным кодом соответствующие комментарии. Скачать утилиту (вместе с исходным кодом) можно здесь: how-to-use-pvs-studio-free.

Заключение

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

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

Надеемся наше предложение и позиция понятны. Если у вас остаются вопросы, то просим написать нам.

Чтобы убедить ваших коллег начать использовать анализатор кода PVS-Studio, предлагаем познакомить их со следующими разделами нашего сайта:

Спасибо за внимание. Давайте вместе сделаем программы надежнее и безопаснее.

Дополнение

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

Вы имеете право использовать PVS-Studio бесплатно, добавив в исходный код своего проекта комментарии специального вида. Какие именно комментарии следует добавлять и как автоматизировать этот процесс описано в статье "Как использовать PVS-Studio бесплатно".

Отметим, что данный режим не предназначен для оценки возможностей анализатора. Чтобы познакомиться с анализатором, вы должны использовать демонстрационную версию или запросить у нас временный лицензионный ключ.

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

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

Дополнение: Поддержка

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

Общение через сайт StackOverflow сократит объем переписки и позволит нам часто отвечать на вопросы, просто давая ссылку на уже обсужденный вопрос по данной теме. Более того, многие вопросы просто не будут заданы, так как пользователи смогут найти готовые ответы на StackOverflow самостоятельно, и им не потребуется ожидать нашего ответа в почте.

Итак, всех кто использует бесплатную версию PVS-Studio просим задавать нам вопросы на сайте StackOverflow. Чтобы ваш вопрос не остался незамеченным, используйте тег "pvs-studio".

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

См. также статью "Поддержка пользователей, использующих бесплатную лицензию PVS-Studio, теперь осуществляется на сайте StackOverflow".

Хотим обратить внимание, что StackOverflow не является багтрекером. Поэтому просим не создавать там топики с такими темами, как "У меня упал плагин PVS-Studio, вот stack-dump" или "Вот это явное ложное срабатывание". Подобные посты противоречат духу сайта StackOverflow и крайне негативно воспринимаются сообществом. Поэтому просим писать туда именно вопросы, связанные с работой анализатора. Чтобы проинформировать нас о явной ошибке, просим по-прежнему писать нам в поддержку.

Популярные статьи по теме
PVS-Studio ROI

Дата: 30 Янв 2019

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

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

Дата: 17 Янв 2019

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

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

Дата: 14 Апр 2016

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

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

Дата: 20 Мар 2017

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

В своей предыдущей статье я писал, что мне не нравится подход, при котором статические анализаторы кода оцениваются с помощью синтетических тестов. В статье приводился пример, воспринимаемый анализат…
Зло живёт в функциях сравнения

Дата: 19 Май 2017

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

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

Дата: 31 Май 2014

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

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

Дата: 27 Июн 2017

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

Проект Unreal Engine развивается - добавляется новый код и изменятся уже написанный. Неизбежное следствие развития проекта - появление в коде новых ошибок, которые желательно выявлять как можно раньш…
Характеристики анализатора PVS-Studio на примере EFL Core Libraries, 10-15% ложных срабатываний

Дата: 31 Июл 2017

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

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

Дата: 21 Ноя 2018

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

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

Дата: 22 Дек 2018

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

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

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

Следующие комментарии

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