Статический анализ C++ кода (Андрей Карпов, ADD-2011)

Материал из CustisWiki
(перенаправлено с «2c4-static-analysis-of-cpp-code-karpov»)
Перейти к: навигация, поиск

Аннотация

Докладчик
Андрей Карпов

Языки C, C++ и C++0x — как набор ножей по дереву. С их помощью создаются великолепные изделия, но немного неаккуратности, и можно глубоко порезаться. Одной из самых ранних методик обнаружения ошибок в коде программ является статический анализ кода. Запуская анализ сразу после написания нового кода или во время ночных сборок, можно выявить множество ошибок еще до этапа тестирования. Это сокращает стоимость и время их исправления. Также могут быть обнаружены дефекты, редко проявляющие себя, которые могут являться головной болью на протяжении многих месяцев сопровождения программы.

В докладе будет продемонстрировано множество примеров ошибок в известных open source программах и библиотеках, которые можно обнаружить с помощью статических анализаторов.

Видео

Скачать
http://ftp.linux.kiev.ua/pub/conference/peers/addconf/2011/2c4-static-analysis-of-cpp-code-karpov.avs.avi


Для этого доклада нужен подкаст (аудиозапись)?

  •  Да, многое понятно и без видео части, есть смысл его прослушать.
  •  Нет, аудиозапись бесполезна (не понять без видео или вообще мало смысла в докладе).

Презентация


Примечания и отзывы

Интересные примеры трудно находимых ошибок в популярных продуктах, таких, например, как Miranda. Доклад был хорош, и продукт видимо тоже - неясным лично для меня осталось только, как извлекать прибыть используя этот инструмент :) Точнее даже так - насколько часты и критичны те ошибки, которые не отлавливаются юнит-тестами, но которые отлавливаются статическим анализом, и как правильно установить процесс ревью этих ошибок, чтобы получать от этого бенефиты, не тратя слишком много времени на сам процесс (см. доклад Яши Сироткина о том, что процесс ради процесса - зло). ©


Продает свою систему для статической верификации C++ программ. Для того и ездит с этим докладом по всем конференциям и раздает брошюрки. Доклад заключается в описании примеров ошибок в исходниках известных продуктов («Return To Castle Wolfestein», «Miranda» и др.), которые он обнаружил, натравливая свою программу.




Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».

Репликация: База Знаний «Заказных Информ Систем» → «Статический анализ C++ кода (Андрей Карпов, ADD-2011)»