Бесплатный PVS-Studio для тех, кто развивает открытые проекты

    PVS-Studio free for open source

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

    Мы помогаем делать код открытого программного обеспечения более качественным и надёжным. Хотя, благодаря нашим публикациям, в открытых проектах было исправлено более 10000 ошибок, этого явно недостаточно. Наша команда физически не способна регулярно проверять тысячи открытых проектов. Поэтому в 2016 году мы предложили бесплатный вариант лицензирования PVS-Studio. Единственное условие — наличие в коде комментариев специального вида. Подробнее про этот вид лицензирования рассказано в статье "Как использовать PVS-Studio бесплатно".

    Идя навстречу пожеланиям, мы решили предоставить возможность бесплатного использования PVS-Studio всем, кто участвует в развитии открытых проектов, размещённых на GitHub или Bitbucket. Авторам этих проектов никаких комментариев добавлять не потребуется.

    Всем желающим мы выдаём бесплатную лицензию сроком на 1 год. Чтобы получить лицензию, необходимо:

    1. Перейти на страницу: https://www.viva64.com/ru/open-source-license/
    2. Ввести имя и e-mail, на который будет прислан лицензионный ключ;
    3. Ввести ссылку на свой GitHub/Bitbucket профайл;
    4. Отправить запрос на бесплатную лицензию.

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

    Ключ является индивидуальным и может быть использован только для проверки открытых проектов, опубликованных на GitHub/Bitbucket. Бесплатная лицензия не распространяется на зеркала проектов.

    Старый вариант бесплатного использования анализатора при добавлении в код комментариев остаётся в силе. У этого режима есть свои преимущества. Например, он может использоваться студентами для проверки своих проектов без необходимости выкладывать их на GitHub/Bitbucket. Более того, предыдущий вариант позволяет использовать анализатор вообще в закрытых проектах.

    Условия

    Поддержка бесплатных пользователей осуществляется посредством ответов на сайте StackOverflow. Более подробно это условие описано в статье "Как использовать PVS-Studio бесплатно" (см. главу «Дополнение: Поддержка»). Хотим обратить внимание, что StackOverflow не является багтрекером. Давайте обсуждать там вопросы, связанные именно с работой анализатора, режимами его работы и так далее. Чтобы проинформировать нас о явном баге, просим по-прежнему писать нам в поддержку.

    Акция предоставления бесплатных лицензий является бессрочной. Однако если мы почувствуем, что что-то пошло не так, мы оставляем за собой право изменить её условия или прекратить её. Также мы оставляем за собой право отозвать конкретный ключ без объяснения причины.

    Как уже было сказано ранее, возможность использования бесплатной лицензии не распространяется на зеркала проектов, например, на Clang, Chromium, KDE и так далее. Поддержка разработчиков подобных проектов потребует от нашей команды значительной работы и будет справедливо, если компании, где трудоустроены эти разработчики, приобретут платную лицензию :).

    Дополнительные ссылки:

    1. Страница продукта PVS-Studio
    2. Скачать PVS-Studio
    3. Получить бесплатную лицензию для открытого проекта
    4. Бесплатное использования PVS-Studio в закрытых проектах



    Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Andrey Karpov. Free PVS-Studio for everyone who develops open source projects.
    PVS-Studio
    726,00
    Static Code Analysis for C, C++, C# and Java
    Поделиться публикацией

    Комментарии 79

      –37
      >размещённых на GitHub или Bitbucket

      Снова какое-то странное оганичение. Вы специально делаете так, чтобы как можно меньше людей проявили интрес к ознакомлению с вашей программой?
        +24
        Написал человек с ником «Хейтер»…
          +13
          Что поделаешь, есть такие люди, которые ничем не довольны. «Вы даёте мне халяву, но делаете это без должного уважения». Очень напоминают вот этого товарища:
            +4
            Но кэп из мультика в итоге оказался прав :)
              0
              «Вы даёте мне халяву, но делаете это без должного уважения»
              — это ваше? Шедевр! Уже хочется либо coub из переозвученного видео из «Крестного отца», или переозвученный вот этот ролик из «Острова Сокровищ» для тех, кто поймет отсылку :).
              –10
              Вот только хейтят тут как раз меня.

              Ладно, делайте что хотите.
              +4

              Критикуешь — предлагай.
              Чем плохо условие размещения открытых проектов в наиболее популярных площадках для размещения открытых проектов?

                +1
                >Чем плохо условие
                Своей излишностью.
                Что мешало просто дать возможность бесплатного использования для открытых проектов? Дополнильное условие не несёт никакого смысла и выглядит как будто его вставили лишь бы было.
                  +2
                  Возможно, это просто для сбора статистики. Намного интереснее требование указать имя и фамилию в форме запроса (при том, что профиль Bitbucket/Github таких данных не содержит). Как там с хранением/обработкой персональной информации?
                    –1
                    Статистики чего?
                    +7

                    Как мне кажется, по GitHub гораздо проще определить достоин ли какой-либо проект получить бесплатную лицензию.
                    Иначе это будет просто раздачей ключей кому попало.

                      +4

                      Значительное ли это ограничение? Отказ от GitLab выглядит не слишком понятным, но в остальном — где ещё люди размещают открытые проекты? Площадки вроде GNU Savannah или какие-то self-hosted сервера.


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


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

                        –7
                        Проблема не в невыполнимости, проблема в иррациональности.
                        С тем же успехом можно было раздавать лицензию лишь проектам с чётным количеством гласных в названии. Выполнимо, но бессмысленно нелепо.
                          +3

                          Опустив момент с тем, что сравнивая с количеством гласных вы явно передергиваете, то по-прежнему непонятно, чем это плохо.


                          Вы может быть всё-таки предложите как надо, вместо того чтобы просто говорить, что как делают они — не правильно?


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


                          Как понять, что человек, который запрашивает лицензию, занимается открытыми проектами?
                          Чем плохо требование хостинга проекта на открытых хостингах? Кто от этого страдает кроме вашего чувства субъективной иррациональности?

                            +6

                            Не забывайте, что это коммерческий продукт и в принципе цель существования коммерческих компаний — это получение прибыли, попутно делая то, что кому-то будет нужно.


                            Наверняка поэтому они раздают бесплатно продукт тем, кто его бы итак не купил — условным Васянам, которые делают что-то в свободное от работы или учёбы время, не получая за это денег. Какую-нибудь прошивку для ESP, мелкую библиотеку для больших чисел или аналог DXVK.


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


                            А если это будет генератор ASCII-котов в zip-архиве на сайте, который никогда не индексировался поисковиками — приход будет нулевой. Хотя по факту проект тоже открытый.

                          +2
                          Выдвигаю ещё предположение:
                          На каких-то своих ресурсах хостят проекты уже полноценные компании, которые способны платить. GitHub и Bitbucket — это популярные сервисы для своего рода стартапов. Но вот почему выпал из этого списка GitLab и тот же Savannah, я не знаю. Возможно просто взяли их как своего рода эксперимент, а если зайдёт — расширят список сервисов.
                      0
                      Очень неплохо, но текст предустановленных лицензией комментариев выглядит скабрезно.
                      Было бы строже
                      // Thoroughly checked with PVS/Studio.
                      // PVS-Studio Static Code Analyzer for C, C++, C#, and Java: www.viva64.com
                        +2
                        Новый вариант не требует никаких комментариев.
                        P.S. Впрочем, старый режим с комментариями в силе.
                          +5
                          Хорошо бы отдельно подчеркнуть это в тексте статьи, сейчас это не очевидно.
                        +4
                        А GitLab будет?
                          +1
                          Пока остановимся на GitHub и Bitbucket.
                            –4

                            Я перевёз все свои проекты на gitlab. А сайт bitbucket вообще не открывается (привет роскомнадзору). И, соответственно, я остаюсь без возможности пользоваться Вашим PVS Studio. Как-то не совсем честно. Не находите?

                              +4

                              То есть, они виноваты в том, что вы перевезли проекты на gitlab?

                                0
                                Нет, они виноваты в том, что мир не идеален.
                                  –3
                                  Да можете ещё 500 минусов напихать. Плевать.
                                  Я считаю, что если уж взялись раздавать для OpenSource, то пусть и раздают, не взирая на то, на каком git-хостинге лежит проект. Если я у себя дома подниму git и буду хранить свои проекты, которые будут открыты всему миру, то я должен переместить всё в лоно микрософта, для того, чтобы я смог пользоваться PVS Studio?
                                    +2

                                    Я вам ни одного минуса не поставил, например. Почему они обязаны раздавать чтобы было удобно всем?
                                    Не так, как им удобно (и в принципе, многим людям учитывая базу пользователей GH и BB).


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

                                      –3
                                      Почему они обязаны раздавать чтобы было удобно всем?
                                      Потому что, они сами решили раздавать для OpenSource проектов. И, если мой проект не на github или запёртом bitbucket, то я — белая ворона, которая ни чего не получит. Абсурд…
                                      Не так, как им удобно
                                      Тогда нечего затевать «акт щедрости».
                                      Вам нужен гитлаб, кто-то другой начнёт возмущаться, что они какой-нибудь городской хостинг в Пензе от Васяна не поддержали. Может просто всем подряд раздавать?
                                      И что с того? Давайте возьмём kernel.org. Он, получается, тоже не получит возможности данного «щедрого» вознаграждения. Кто-то держит свой успешный проект на своём git. Он открыт. Пожалуйста, берите, пользуйтесь. Но, видите-ли PVS Studio решили ограничиться… Честно, и по человечески — грош, цена такой «щедрости».
                                        +3
                                        Тогда нечего затевать «акт щедрости».

                                        "Либо мне, либо никому"? Собственно, нигде и не шло речи о бескорыстной раздаче лицензий. Вы же не забываете, что это не некоммерческая организация? И любая деятельность коммерческой компании ведёт в конечном счёте к увеличению прибыли.
                                        Вот же капиталистические редиски, правда? Мало того, что бесплатно продукты раздают, так ещё и не той целевой аудитории, которая создаст достаточный объем саморекламы посредством использования продукта.


                                        В чём проблема-то, собственно? В том, что хочется хороший продукт поиметь на халяву, а ложку в рот не кладут и за ней вставать надо? Вас же никто не обязывает, не нравятся условия — не пользуйтесь. Вы не будете — другие будут. И таких людей будет много больше, чем тех, которые воняют на тему того, что их самый лучший хостинг обделили.


                                        Он, получается, тоже не получит возможности данного «щедрого» вознаграждения.

                                        У kernel.org между прочим есть Linux Foundation, который много денег вливает в разработку ядра. О таких ситуациях в статье описано.

                                          –1
                                          «Либо мне, либо никому»?
                                          Вы название статьи почитайте ещё раз… Или как обычно — «больше громких слов и обещаний»?
                                            +3
                                            Бесплатный PVS-Studio для тех, кто развивает открытые проекты

                                            • Бесплатно? Бесплатно.
                                            • PVS-Studio? PVS-Studio.
                                            • Для тех, кто развивает открытые проекты? Тоже верно.

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


                                            Чем плохо условие размещение на площадках с максимально возможным охватом аудитории? Вы говорите, что лучше никак, чем так. Лучше тем, что вместо пары одиноких рейнджеров, которые косо смотрят на майкрософт, уже никто не сможет воспользоваться? Хотя по факту, никто не обещал всем подряд задарма раздавать.

                                        +1
                                        что они какой-нибудь городской хостинг в Пензе от Васяна не поддержали
                                        А что сразу в Пензе то? )
                                        +1
                                        Вставьте в начале файлов нужные строчки и пользуйте программу бесплатно, что было доступно ещё раньше. Что, тоже не хотите? Злые капиталисты диктуют вам куда и что делать?
                                        Сюда-то тогда зачем пришли? Похейтерить на злобных капиталистов, диктующих вам что делать?
                                0

                                Как там Java-версия, достаточно функциональна или лучше подождать? Я бы пару своих проектов проверил.

                                  +1
                                  Можете запросить beta-версию.
                                    +2
                                    Планируется ли статья по итогам бета-тестирования?
                                    А то версию мне присылали, я дал обратную связь — и тишина =)
                                      0
                                      ++(про статью). Так же будут интересны статьи про проверки проектов, напр. intellij, по аналогии с проверками c/c#/c++ проектов.
                                      UPD: Анализатор не нашел кучи ошибок в моих мини-проектах. Возможно это из-за того, что IntelliJ сама неплохо находит ошибки?
                                        0
                                        Проекты на Java со временем станут таким же источником интересных статей, как и другие.
                                        Анализатор не нашел кучи ошибок в моих мини-проектах. Возможно это из-за того, что IntelliJ сама неплохо находит ошибки?
                                        Скорее всего, дело всё-таки в мини-проектах :-)
                                          0
                                          Да, я тоже так думаю. Но и в IntelliJ анализаторе тоже. Он достаточно неплохой, и многие(не в смысле что их много) логические ошибки которые он находил, могли бы быть найдены pvs.
                                            0
                                            Проверял с помощью PSV-studio для java и проекты с 280k/500k объемом кодовой базы. Множество ложноположительных срабатываний и ничего стоящего и интересного пока не находил.

                                            Посмотрим что будет в релизной версии анализатора, но пока нет никаких преимуществ перед бесплатными анализаторами…
                                          0
                                          Бета-тестирование прошло достаточно гладко, чтобы были какие-то интересные истории. За последине 3 года мы выпустили PVS-Studio C#, PVS-Studio for Linux, PVS-Studio for macOS, поэтому приобретённый опыт помогает делать этот процесс более чётким.

                                          p.s. насчёт обратной связи, можете прислать мне в личку свою почту, я проверию, кто Вам отвечал или не отвечал)
                                      +3

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

                                        0
                                          +3
                                          Ээээ… на простейший код «while(1){}» он написал любую фигню, кроме «отсутствие выхода из цикла».
                                          Этот анализатор и правда говно, теперь мне нужно сварить латте, спасибо блин.
                                            +3

                                            Линтеры в основном для проверки код стайла и ошибок синтаксиса.

                                              0
                                              Хотя этот комментарий относится видимо к двум упомянутым анализаторам, все-таки не могу пройти мимо. Так как кто-то может подумать, что все «линтеры» такие. А между тем коллега недавно опубликовал статью с как раз таким текстом:

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

                                                0
                                                Эти 2 упомянутые анализатора тоже не «такие», но я не нашелся что ответить. Ссылку на документацию? Пересказ всех правил, которые не только «синтаксис и код стайл»? Объяснение, что while(true){ code } — валидная инструкция? А для пустого тела есть правило no-empty?
                                        +1
                                        одни из популярных: phpstan/phpstan, phan/phan vimeo/psalm
                                        Ну и вот еще немного.
                                        +5
                                        Отличная новость!
                                        С этим ключём можно будет интегрировать PVS в CI процесс на travis?
                                          +4
                                          Да, конечно. Напишите, пожалуйста, про свой опыт потом. Или здесь, а в идеале отдельной статьей.
                                          +5

                                          Извиняюсь если уже предлагали — а была уже озвучена идея на GitHub сделать бейдж (зелененький такой) — типа "Проверено PVS-Studio"? Для проектов, которые действительно проверены и прошли проверку. Хотя тут конечно возникает вопрос, чем считать "прошли проверку" — нет предупреждений PVS-Studio вообще, или нет ошибок, но есть предупреждения — и т.д

                                            +2
                                            Как раз вот это вопрос и не понятно как решить…
                                              0

                                              IMHO связываться с администрацией GitHub и предлагать — только так, других путей полагаю нет. Так что только Вы (компания), как создатель продукта, должны/можете это инициировать и продвигать. Но, думаю, это не что-то невозможное — GitHub должен будет интегрировать PVS-Studio в свой pipeline — а у Вас все для этого есть, cli-версии всех необходимых инструментов. Так что мы (сообщество) были бы рады помочь, да только как!

                                                0

                                                Возможно, два разных бэйджа?

                                                  +7
                                                  «Я слышал про PVS-Studio» и «Я пользовался PVS-Studio» :-)
                                                    0

                                                    хотя бы бейдж "Используем PVS"

                                              +1
                                              Зачем раздавать ключи? Ведь можно сделать намного проще — самостоятельно проверять открытый код на собственном сервере. Очень желательно в автомате и быстро. Естественно тот код, что расположен в открытых источниках. Естественно только с запроса автора кода.
                                              Это можно организовать только при участии владельцев самих бесплатных площадок.
                                              Только им доступна операция добавления кнопочки «сделать красиво».

                                              В плюсах владельцы площадок — с эффектом офигенного сервиса, ваша компания — с эффектом бесплатной рекламы, ну и гости бесплатных площадок.
                                              Про авторов кода могу предположить появление желания выполнять проверку автономно. Дабы не позорится…
                                                +10
                                                > Ведь можно сделать намного проще

                                                Да уж, и правда «намного проще»…
                                                  –1
                                                  А что не так?
                                                  Ну получит автор зелёную строчку в хидере, с голубой каёмочкой «ошибок нет». Ему известно где она существует, и вам известно, и тому кто будет её целенаправленно искать…
                                                  Но одно дело иметь эту строчку, и совершенно иное дело — способ её получения.
                                                  Это как говориться — две больших разницы.
                                                    +1
                                                    Вы очень зря иронизируете. Вот идея для стартапа, которую вы возможно рассматривали но в итоге проигнорировали.

                                                    Посмотрите на решения вроде TravisCI, CircleCI и иже с ними, для opensource бесплатно, а если нужно для комерческого использования? Будь так любезный и купи подписку.
                                                      0
                                                      Эта ниша уже занята, более качественным для java, бесплатным статическим анализатором кода.
                                                      А поскольку у PSV studio есть интеграция с sonar, то возможно там же визуализировать результаты проверки. Если договорятся с sonarcloud…
                                                    +2
                                                    Возможно здесь дело в наличии «собственных серверов». При активном OSS сообществе быстро зашкалит их количество, работающих условно бесплатно.
                                                    Coverity делает немного по другому. Анализатор отрабатывает на сервисе travis-ci или на своём железе, а на сервера анализатора загружаются только логи. Причём логи запакованы и, видимо, зашифрованы. Без загрузки на сервис coverity они бесполезны.
                                                      +2
                                                      Библиотеки, от которых зависят проекты, как подтягивать будете?
                                                        0
                                                        Через apt get
                                                          0
                                                          А откуда узнаете, какие именно нужны?

                                                          Какой дистрибутив? Какая-нибудь Ubuntu LTS? Это может и не подходить.
                                                            0
                                                            Например, на travis-ci каждый получает готовый образ системы, и потом сам устанавливает те пакеты, от которых зависит проект.
                                                            Конфигурацию каждый сам описывает.
                                                              0
                                                              Вот поэтому я и не использую travis, потому что зависимости там слишком старые (по крайней мере, были старые, когда я заморачивался на тему CI). Поэтому сейчас у меня свой jenkins на своём сервере, который собирает docker-образы с зависимостями согласно конфигам в репозитории, и проверяет сборку для разных дистрибутивов и их версий.
                                                                0
                                                                Старые-новые это не так важно. Главное, что для OSS использование бесплатное.
                                                                Сейчас на travis-ci основной образ Ubuntu 14.04, в бете 16.04.
                                                                А те, кто хотят поновее, могут собрать свой в chroot или docker.
                                                                Вот тут собирают 18.04.
                                                                Свой сервер это конечно хорошо, но не всегда возможно.
                                                                  0
                                                                  Travis докер образы умеет тоже…
                                                                  Да и сейчас не только travis есть на github с докером, на память приходит azure, сircle ci. Остальные CI нагрузку не тянут.

                                                                  Но если надо собирать очень много и сразу, остается только gitlab.com
                                                        0
                                                        Здравствуйте!

                                                        У меня такой вопрос. Я занимаюсь академическими исследованиями. Соответственно у меня есть несколько закрытых, академических (читай некомерческих проектов), которые нигде и ни с кем не расшарены и над которыми работаю я сам. Могу ли я воспользоваться бесплатной лицензией PVS-Studio для них (по схеме описанной здесь — www.viva64.com/ru/b/0457)?

                                                        P.S.: Вроде могу, но хотелось бы получить какое-то более менее формальное подтверждение
                                                          +2
                                                          Да, можете.
                                                            0
                                                            Cпасибо за ответ!
                                                          0

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

                                                            +1
                                                            Сейчас сделано, что комментарий должен находиться в первых 10 строчках. И да, всем не угодить. Да и нет у нас задачи угодить всем. Да, мы такие, но что делать… :)
                                                            0

                                                            Это не претензия, а предложение. А можно тогда попросить увеличить это значение до, скажем, 30 или 50
                                                            Часто начало фала выглядит примерно так


                                                            /* BEGIN_COMMON_COPYRIGHT_HEADER
                                                             * (c)LGPL2+
                                                             *
                                                             *
                                                             * Copyright: 2012-2013 Boomaga team https://github.com/Boomaga
                                                             * Authors:
                                                             *   Alexander Sokoloff <sokoloff.a@gmail.com>
                                                             *
                                                             * This program or library is free software; you can redistribute it
                                                             * and/or modify it under the terms of the GNU Lesser General Public
                                                             * License as published by the Free Software Foundation; either
                                                             * version 2.1 of the License, or (at your option) any later version.
                                                             *
                                                             * This library is distributed in the hope that it will be useful,
                                                             * but WITHOUT ANY WARRANTY; without even the implied warranty of
                                                             * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
                                                             * Lesser General Public License for more details.
                                                             * You should have received a copy of the GNU Lesser General
                                                             * Public License along with this library; if not, write to the
                                                             * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
                                                             * Boston, MA 02110-1301 USA
                                                             *
                                                             * END_COMMON_COPYRIGHT_HEADER */

                                                            Т.е. лицензия больше 8 строк.

                                                              0
                                                              Предлагаю использовать новый способ бесплатного лицензирования.
                                                              0
                                                                0
                                                                Отправил запрос на лицензию. Сколько обычно проходит времени до получения ключа?
                                                                В случае отказа высылается ли отказ на электронную почту указанную при запросе?
                                                                  +1
                                                                  Теперь бесплатным вариантом лицензирования могут воспользоваться и Java разработчики: PVS-Studio для Java.

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

                                                                  Самое читаемое