Недавно я работал над новой C#-диагностикой V3119 для статического анализатора PVS-Studio. Назначение диагностики — выявление потенциально небезопасных конструкций в исходном коде C#, связанных с использованием виртуальных и переопределенных событий. Давайте попробуем разобраться: что же не так с виртуальными событиями в C#, как именно работает диагностика и почему Microsoft не рекомендует использовать виртуальные и переопределенные события?
Читать полностью »
Рубрика «pvs-studio» - 27
Виртуальные события в C#: что-то пошло не так
2016-11-18 в 13:10, admin, рубрики: .net, C#, chatbots, microsoft, open source, pvs-studio, static code analysis, Visual Studio, Блог компании PVS-Studio, ПрограммированиеКонтролируем качество кода с помощью платформы SonarQube
2016-11-16 в 12:18, admin, рубрики: pvs-studio, sonarqube, Блог компании PVS-Studio, контроль качества кода, метрики кода, управление проектами, управление разработкой, метки: sonarqube
В этой статье мы рассмотрим основные возможности SonarQube — платформы для непрерывного анализа и измерения качества кода, а также обсудим достоинства методики оценки качества кода на основе метрик SonarQube.
Читать полностью »
Как создавался PVS-Studio под Linux
2016-11-14 в 13:12, admin, рубрики: C, c++, cross-platform, crossplatform, linux, pvs-studio, static code analysis, Блог компании PVS-Studio, Компиляторы, Разработка под Linux, статический анализ кода
В этом году мы начали делать то, к чему у нас долгое время было спорное отношение, а именно — адаптацию продукта PVS-Studio к Linux системе. В статье я расскажу о том, как спустя 10 лет существования анализатора PVS-Studio для Windows, мы решили сделать продукт для дистрибутивов Linux. Это большая работа, не ограничивающаяся, к сожалению, как думает ряд программистов, исключительно компиляцией исходников под целевую платформу.
Читать полностью »
PVS-Studio покоряет Интернет
2016-11-07 в 13:15, admin, рубрики: Instagram, pvs-studio, static code analysis, YouTube, Блог компании PVS-Studio, маркетинг, соцсети, статический анализ кода
Основная задача команды PVS-Studio — работа над статическим анализатором кода. Да, работу программиста нельзя назвать бесконечным праздником, но это не значит, что трудовые будни нашей команды — это 8-часовое сидение за компьютером. Эта статья о том, каким образом мы совмещаем приятное с полезным, а именно — реализуем свои творческие задумки и делаем попытки в завоевании интернет мира.
Читать полностью »
Продолжаем проверять проекты Microsoft: анализ PowerShell
2016-11-02 в 8:14, admin, рубрики: .net, C#, microsoft, open source, powershell, pvs-studio, static code analysis, Visual Studio, Блог компании PVS-Studio, Оболочки, статический анализ кода
Для корпорации Microsoft в последнее время стало 'доброй традицией' открывать исходные коды своих программных продуктов. Тут можно вспомнить про CoreFX, .Net Compiler Platform (Roslyn), Code Contracts, MSBuild и прочие проекты. Для нас, разработчиков статического анализатора PVS-Studio, это возможность проверить известные проекты, рассказать людям (и разработчикам в том числе) о найденных ошибках и потестировать анализатор. Сегодня речь пойдёт об ошибках, найденных в ещё одном проекте Microsoft — PowerShell.
Читать полностью »
Находим ошибки в коде проекта LLVM с помощью анализатора PVS-Studio
2016-10-31 в 13:28, admin, рубрики: c/c++, c++, clang, LLVM, open source, pvs-studio, PVS-Studio for Linux, static code analysis, Блог компании PVS-Studio, инструменты разработчика, информационная безопасность, Компиляторы, обзор кода, ошибки в коде, ошибки в программе, Разработка под Linux, статический анализ кода
Около двух месяцев назад я написал статью о проверке компилятора GCC с помощью анализатора PVS-Studio. Идея статьи была следующая: предупреждения GCC — это хорошо, но недостаточно. Надо использовать специализированные инструменты анализа кода, например, PVS-Studio. В качестве подтверждения я показал ошибки, которые PVS-Studio смог найти в коде GCC. Ряд читателей заметили, что качество кода GCC и его диагностики так себе, в то время как компилятор Clang современен, качественен, свеж и молод. В общем Clang — это ого-го! Что ж, значит пришло время мне проверить с помощью PVS-Studio проект LLVM.
Читать полностью »
Идем на рекорд: пятая проверка Chromium
2016-10-26 в 13:04, admin, рубрики: c++, chromium, code review, Google Chrome, open source, pvs-studio, Блог компании PVS-Studio, качество кода, обзоры кода, ошибки в коде, статический анализ кода
Казалось бы, Chromium был рассмотрен нами неоднократно. Внимательный читатель задастся логичным вопросом: «Зачем нужна еще одна проверка? Разве было недостаточно?». Бесспорно, код Chromium отличается чистотой, в чем мы убеждались каждый раз при проверке, однако ошибки неизбежно продолжают выявляться. Повторные проверки хорошо демонстрируют, что чем чаще будет применяться статический анализ, тем лучше. Хорошо, если проект проверяется каждый день. Ещё лучше, если анализатор используется программистами непосредственно при работе (автоматический анализ изменённого кода).
Читать полностью »
PVS-Studio для Linux
2016-10-25 в 6:12, admin, рубрики: C, c++, developer tools, pvs-studio, PVS-Studio for Linux, PVS-Studio для Linux, static code analysis, Блог компании PVS-Studio, инструменты разработчика, Разработка под Linux, разработка под windows, Си, статический анализ кода
Свершилось! Сегодня мы выпустили публичную версию анализатора PVS-Studio для Linux. Теперь разработчики Linux приложений получат новое мощное оружие для борьбы с багами в коде. Призываем разнести эту новость по миру. Расскажите своим коллегам по работе, напишите в Twitter и Facebook! Да будут программы надёжней и стабильней!
Читать полностью »
Ищем и анализируем ошибки в коде GitExtensions
2016-10-13 в 8:08, admin, рубрики: .net, C#, Git, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, Компиляторы, статический анализ кода
Как изестно Ядро Git представляет собой набор утилит командной строки с параметрами. Для комфортной работы как правило используются утилиты, дающие нам привычный графический интерфейс. Вот и мне довелось в свое время поработать с такой утилитой для Git, как GitExtensions. Не скажу, что это самый удобный инструмент, которым мне доводилось пользоваться (к примеру, тот же TortoiseGit мне нравится больше), но он явно и не безосновательно занимает свою нишу в списке любимых и проверенных утилит для работы с Git.
Недавно я вспомнил про него, и решил проверить статическим анализатором на наличие ошибок и опечаток его исходный код. О том, какие ошибки были найдены после проверки я расскажу в этой статье.
Читать полностью »

