Не так давно, как вы наверняка знаете, корпорация Microsoft купила компанию Xamarin. Даже несмотря на то, что в последнее время Microsoft начала постепенно открывать исходные коды своих продуктов, открытие кода Xamarin.Forms стало большим сюрпризом. Я не смог пройти мимо такого события, и решил проверить исходный код этого проекта с помощью статического анализатора кода.
Рубрика «pvs-studio» - 30
Microsoft открыла исходники Xamarin.Forms. Мы не могли упустить шанс проверить их с помощью PVS-Studio
2016-05-24 в 10:58, admin, рубрики: .net, C#, Mono, Mono и Moonlight, open source, pvs-studio, static code analysis, xamarin, xamarin.forms, Блог компании PVS-Studio, статический анализ кодаВведение в Roslyn. Использование для разработки инструментов статического анализа
2016-05-19 в 11:15, admin, рубрики: .net, api, C#, open source, pvs-studio, roslyn, static code analysis, Visual Studio, Блог компании PVS-Studio, статический анализ кода
Roslyn является платформой, предоставляющей разработчику различные мощные средства для разбора и анализа кода. Но наличия таких средств недостаточно, нужно понимать, что и для чего необходимо использовать. Данная статья несёт цель ответить на подобные вопросы. Помимо этого, будет рассказано об особенностях разработки статических анализаторов, использующих Roslyn API.
Читать полностью »
Проверка Firebird 3.0
2016-05-11 в 13:54, admin, рубрики: c++, firebird, Firebird/Interbase, open source, pvs-studio, static code analysis, Блог компании PVS-Studio, статический анализ кода, СУБДНе так давно вышла новая версия СУБД Firebird. Релиз стал одним из масштабных в истории проекта: была сильно переработана архитектура, добавлена поддержка многопоточности, улучшена производительность. Такое значительное обновление и послужило поводом для повторной проверки Firebird с помощью статического анализатора кода PVS-Studio.
Читать полностью »
Пояснение про ограничения демонстрационной версии PVS-Studio
2016-05-06 в 6:52, admin, рубрики: c/c++, C#, demo, pvs-studio, trial, Блог компании PVS-Studio, демонстрация товара, сипровер, статический анализ кода
У ограничений имеется две цели. Первая — как можно быстрее показать потенциальному пользователю, что статический анализатор может находить ошибки в его коде. Вторая — побудить к общению с нами в почте, чтобы помочь использовать инструмент правильно. Я уверен, что эта взаимосвязь непонятна, поэтому я и решил написать эту маленькую заметку.
Читать полностью »
Поиск ошибок с помощью вычисления виртуальных значений
2016-05-05 в 8:59, admin, рубрики: C#, pvs-studio, static code analysis, Блог компании PVS-Studio, Программирование, статический анализ кодаВ процессе работы статического анализатора точные значения или диапазоны значений некоторых переменных и выражений могут быть вычислены на этапе анализа. Это полезная информация, которую можно использовать при поиске ошибок. Мы называем такие значения виртуальными значениями, о них и будет эта статья.
Проверка PHP 7
2016-04-28 в 10:41, admin, рубрики: C, open source, php, pvs-studio, static code analysis, Блог компании PVS-Studio, Си, статический анализ кода
Повторная проверка проектов нередко бывает весьма интересной. Она позволяет узнать, какие новые ошибки были допущены в ходе разработке приложения, а какие ошибки уже были исправлены. Раньше мой коллега уже писал о проверке PHP. С выходом новой версии (PHP7), я решил ещё раз проверить исходный код интерпретатора и нашёл кое-что интересное.
Читать полностью »
Интеграция PVS-Studio в CI процесс
2016-04-26 в 9:50, admin, рубрики: bamboo, c++, continuous integration, pvs-studio, Программирование, Тестирование IT-системЗдравствуйте, уважаемые читатели.
Меня зовут Стас, я инженер команды DevOps Tooling в компании Align Technology.
В этой статье я попробую коротко рассказать про то, как в нашей компании внедрили статический анализ кода на основе PVS-Studio.
Введение
Приблизительно год назад мы задумались о том, чтобы внедрить в нашей компании статический анализ.
Мы и раньше использовали для этого различные средства, в том числе и для C/C++ проектов. Потому было интересно попробовать новый инструмент для известной задачи.
Инструмент, более совершенный, чем встроенный средства VS, cpp-check, интегрированный в Sonar.
Логические выражения в C-C++. Как ошибаются профессионалы
2016-04-11 в 6:40, admin, рубрики: C, c++, pvs-studio, Блог компании PVS-Studio, Си Логическое выражение в программировании — конструкция языка программирования, результатом вычисления которой является «истина» или «ложь». Во многих книгах по программированию, предназначенных для изучения языка «с нуля», приводятся возможные операции над логическими выражениями, с которыми сталкивался каждый начинающий разработчик. В этой статье я не буду рассказывать, что оператор 'И' приоритетнее оператора 'ИЛИ'. Я расскажу о распространённых ошибках в простых условных выражениях, состоящих всего из трёх операторов, и покажу, как можно проверить свой код с помощью построения таблиц истинности. Описанные ошибки делают разработчики таких известных проектов как FreeBSD, Microsoft ChakraCore, Mozilla Thunderbird, LibreOffice и многих других.
Читать полностью »
Плохой код пакета для создания 2D-анимаций Toonz
2016-04-07 в 7:43, admin, рубрики: c++, futurama, open source, opentoonz, pvs-studio, Toonz, Блог компании PVS-Studio, компьютерная графика, обзор кода, обработка изображений, Работа с векторной графикойНа днях стало известно о том, что Digital Video, создатели проекта TOONZ, и японский издатель DWANGO подписали соглашение о приобретении компанией DWANGO проекта Toonz, программного обеспечения для создания 2D анимации.
По условиям соглашения, подписанного между сторонами, будет открыт общий доступ к OpenToonz, проекту, разработанному компанией Toonz. Он так же будет включать некоторые элементы, разработанные Studio Ghibli, которые в свою очередь являются активными пользователями этих программ. С их помощью, например, Studio Ghibli создавали «Ходячий замок Хоула», «Унесенных призраками», «Рыбку Поньо», а также множество других картин. В их числе так же мультфильм «Футурама», который вдохновил меня на написание этой разоблачающей статьи про исходный код OpenToonz.
Читать полностью »
Безопасная очистка приватных данных
2016-04-06 в 12:23, admin, рубрики: C, c++, memset, pvs-studio, Блог компании PVS-Studio, Компиляторы
Часто в программе необходимо хранить приватные данные. Например: пароли, ключи и их производные. Очень часто после использования этих данных, необходимо очистить оперативную память от их следов, чтобы злоумышленник не мог получить доступ к ним доступ. В этой заметке пойдет речь о том, почему для этих целей нельзя пользоваться функцией memset().
Читать полностью »