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

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

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

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

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

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

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


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

>
>
Видео о статическом анализе кода

Видео о статическом анализе кода

26 Апр 2017

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

0501_Videos_about_static_code_analysis_ru/image1.png

Русскоязычные видео

Статический анализ кода

Автор: Кошелев Артём

Составляющие качественного кода — понятность, простота, архитектура. В видео рассказывается, что из себя представляет статический анализ, какого его устройство и какие инструменты он использует. Поднимаются вопросы об особенностях, достоинствах и недостатках динамического и статического анализа. Рассматриваются популярные инструменты статического анализа, в частности SonarQube.

Статический анализ, как гигиена кода

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

Видео с конференции DotNext 2015 Moscow. В докладе рассказывается о способах обнаружения ошибок, методологии статического анализа, правильном и неправильном использовании инструментов анализа кода. Автор также приводит мифы о статическом анализе, которые могут ввести в заблуждение разработчиков. Демонстрируются примеры ошибок в Open Source проектах, выявленных с помощью таких инструментов, как ReSharper, PVS-Studio, Visual Studio SCA.

Статический анализ в C++ и анализ производительности

Авторы: Александр Нежельский, Евгений Буштырёв, Никита Какуев, Николай Дьяконов.

Запись доклада, озвученного в рамках события CoLaboratory в штаб-квартире "Лаборатории Касперского". В видео обсуждается статический анализ C++ кода и анализ производительности программ. В числе прочего авторы рассказывают, как сделать код пригодным для статического анализа, как бороться с ложными срабатываниями и как расширять функциональность Clang Static Analyzer за счет собственных проверок.

Современный статический анализ кода: что умеет он, чего не умели линтеры

Автор: Павел Беликов

Видео с конференции C++ CoreHard Winter 2017. Автор показывает, чему со времени появления по сегодняшний день научились статические анализаторы. Рассматриваются различные методики анализа, как они появлялись и какие ошибки можно с их помощью найти. В видео проводится разбор ошибок, найденных в Open Source проектах, и рассказывается, чем статический анализатор отличается от "линтеров" и некоторых других инструментов, а также какие проблемы, помимо анализа кода, он решает.

Сценарии использования статического анализатора

Автор: Валерий Игнатьев

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

Сlang-Tidy путешествие внутрь C++ Abstract Syntax Tree

Автор: Юрий Ефимочев

Видео с конференции CoreHard Summer Conf 2016. Семейство библиотек Clang предоставляет разработчикам широчайшие возможности по реализации различных инструментов, основанных на разборе и анализе абстрактного синтаксического дерева (AST). В частности, авторы Clang выпускают такой инструмент, как Clang-Tidy, который является мощным статическим анализатором кода. В видео рассматривается, как этот инструмент применяется в процессе разработки для С++ и как дополнить его собственными проверками. Попутно идет разбор некоторых занимательных особенностей AST для С++.

Не все статические анализаторы одинаково полезны

Автор: Владимир Кошелев

Видео с конференции DotNext 2016 Spb. В докладе речь пойдет о популярных инструментах, ищущих нарушения Guidelines, ошибки copy-paste и опечатки в исходном коде. Обсуждаются результаты работы этих инструментов на наборе Open Source проектов, а также об используемой при сравнении методике. Далее рассматриваются более сложные ошибки, такие как возникновение NullReferenceException или утечка ресурсов, и способы их обнаружения. Помочь обнаружить такие ошибки может как чисто статический анализ, например, Coverity Prevent, так и статико-динамический, такой как IntelliTest(Pex).

Статический анализ кода в контексте SSDL

Автор: Иван Ёлкин

Видео с форума PHDays VI. Ведущий фаст-трека рассказывает об опыте внедрения Static Analysis Security Tool в QIWI, о сложностях, с которыми сталкивались разработчики. Разбирает такие вопросы, как писать "костыли" или рефакторить код, а также что делать, когда мнения клиента и разработчика расходятся. Расскажет, сколько строк кода пришлось прочитать и написать до и после запуска сканера, и предложит краткий обзор найденных и упущенных уязвимостей.

Статический анализ кода JS

Автор: Антон Хлыновский

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

Англоязычные видео

Что такое статический анализ?

Автор: Matt Might

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

Статический анализ кода: просканируйте весь свой код на ошибки

Автор: Jared DeMott

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

Статический анализ кода: предотвращение ошибок и замедлений до того, как они случаются

Автор: Vinny DaSilva

Встреча с форума Unit 16 Los Angeles. Автор рассказывает, как использовать инструменты статического анализа для улучшения качества кода в процессе разработки, как настроить статический анализ кода, чтобы соответствовать определенным потребностям и рабочим процессам команды разработчиков, а также как объединиться с непрерывными системами интеграции, чтобы давать разработчикам постоянную обратную связь.

Сделаем код более безопасным! - Обзор жизненного цикла безопасной разработки и статический анализ кода

Автор: Jason Cohen

Несмотря на экспоненциальный рост продуктов, спецслужб, компаний, сертификатов безопасности и общего интереса к этой теме, до сих пор каждый день обнародуются все новые уязвимости безопасности. Внедрение передового опыта, принципов жизненного цикла разработки, а также статического анализа кода в этой области, может значительно снизить вероятность возникновения общих вопросов безопасности. Обработка входных данных, Cross-Site-Scripting, переполнение буфера и другие задачи по-прежнему представляют основную проблему безопасности. Статический анализ кода может помочь найти многие из этих незаметных уязвимостей до того, как код выйдет из рук разработчика. В видео рассматриваются общие передовые практики развития жизненного цикла безопасности и как интегрировать их в современные схемы разработки кода.

Охота на баги с использованием статического анализа кода

Автор: Nick Jones

Видео с конференции BSlidesLondon 2016. Автор рассказывает о целом ряде возможностей использования автоматизированных методов анализа для выявления ошибок и изъянов в безопасности приложений на уровне исходного кода, начиная от быстрых сценариев, переходя к коммерческим анализаторам и инструментам с открытым исходным кодом и заканчивая пользовательскими решениями. Рассматривается, как эти методы могут быть использованы в системе непрерывной интеграции и как в самом начале цикла разработки можно обнаружить ошибки.

Текущее состояние (бесплатного) статического анализа

Автор: Jason Turner

Видео с конференции CPPCON2015. Обсуждаются имеющиеся в настоящее время бесплатные статические анализаторы, доступные для C++. Автор рассказывает какие ошибки могут поймать эти инструменты, а какие пропускают и почему статический анализ должен быть частью обычного процесса сборки.

Статический анализ и С++: больше, чем Lint

Автор: Neil MacIntosh

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

Подружимся с инструментами статического анализа Clang

Автор: Gabor Horvath

Видео с конференции CPPCON2016. В этом докладе представлен обзор инструментов статического анализа для C++ с открытым исходным кодом. Акцент делается на инструментах на основе Clang. Понимание различных методов разработки таких инструментов может быть очень полезным, поскольку это помогает создавать более дружественный статический анализатор кода и понимать причину ложных срабатываний, а также показывает ограниченность имеющихся в настоящее время инструментов. Автор дает краткий учебный материал о том, как использовать и интегрировать их в поток работы.

Поиск багов при помощи Clang на этапе компиляции и во время выполнения

Автор: Bernhard Merkle

Видео с конференции ACCU 2016. Анализ кода и проверка приобретают все большее значение в программировании и обеспечении качества программных проектов. Особенно в таких языках, как С/С++, ошибки могут вызвать неопределенное поведение и утечки памяти. Инструменты статического анализа хорошо в этом помогают, но бывает трудно обнаружить проблемы, которые возникают во время выполнения программы. В этом докладе показывается использование возможностей Clang для поиска багов, как во время компиляции (с помощью статических анализаторов), так и во время выполнения (с помощью санитайзеров). Сочетание обоих подходов позволяет повысить качество программного обеспечения.

Статический анализ исходного кода. Следующее поколение

Автор: James Croall

Видео с конференции Devoxx 2016. Прошли времена "линтеров" и прославленных проверок орфографии. Сегодня статический анализ исходного кода является точным и надежным, и может найти сложные дефекты кодирования в параллельных программах, которые незаметны человеческим взглядом. В докладе рассказывается, как в Open Source проектах разработчики, используя программное обеспечение Coverity, нашли и устранили критические ошибки, приводящие к падениям программ, и дефекты в области безопасности в языке Java.

Статический анализ сегодня спас мой код

Автор: Damien Seguy

Видео с конференции PHP UK Conference 2017. Инструменты статического анализа проверяют PHP-код без его запуска. Полностью автоматизированные, они привносят опыт, чтобы просмотреть код, обеспечить соблюдение передовых методов при программировании, поддерживать готовность кода для следующей версии PHP. PHP 7 значительно расширил возможности по аудиту кода - благодаря AST и возвращаемым типам, можно провести более глубокий анализ и предотвратить большее количество ошибок. В этом видео автор рассмотрит текущее состояние инструментов статического анализа, покажет, что они могут найти, а также продемонстрирует, как интегрировать их в цикл разработки.

Статический анализ кода для Python

Автор: Andrew Wolfe

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

Дополнение статического анализа с использованием Ablation

Автор: Paul Mehta

Конференция BH USA 2016. Ablation является дополнительным инструментом к статическому анализу, созданным для извлечения информации из выполняемого процесса. Эта информация затем импортируется в среду дизассемблирования, где она используется для разрешения виртуальных вызовов, выделения области исполняемого кода и визуально различия сценариев. Цель Ablation заключается в расширении статического анализа с минимальными расходами или вовлечением пользователя. Ablation позволяет легко сравнивать сценарии и выделить различающиеся. Это достигается путем сравнения исполняемого кода, а не просто сопоставления данных. Также в видео рассматривается сравнение запутанного сценария падения и исходного сценария.

Заключение

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

Другие материалы

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

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

Дата: 30 Янв 2019

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

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

Дата: 31 Май 2014

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

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

Дата: 22 Окт 2018

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

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

Дата: 17 Янв 2019

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

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

Дата: 19 Май 2017

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

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

Дата: 16 Окт 2017

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

Я в шоке от возможностей статического анализа кода, хотя сам участвую в разработке инструмента PVS-Studio. На днях я был искренне удивлён тому, что анализатор оказался умнее и внимательнее меня.
Характеристики анализатора 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. Им предоставляется возмо…
Статический анализ как часть процесса разработки Unreal Engine

Дата: 27 Июн 2017

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

Проект Unreal Engine развивается - добавляется новый код и изменятся уже написанный. Неизбежное следствие развития проекта - появление в коде новых ошибок, которые желательно выявлять как можно раньш…

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

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

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