Автоматическая проверка кода - Automated code review

Автоматическая проверка кода программное обеспечение проверяет исходный код на соответствие заранее определенному набору правил или передовой практике. Использование аналитических методов для проверки и анализа исходного кода на предмет ошибок или проблем безопасности было стандартной практикой разработки в обоих Открытый исходный код и коммерческое программное обеспечение.[1] Этот процесс можно выполнить как вручную, так и автоматически.[2][3] При автоматизации программные инструменты помогают обзор кода и процесс проверки. Программа или инструмент проверки обычно отображает список предупреждений (нарушения стандартов программирования). Программа проверки может также предоставить автоматизированный способ или с помощью программиста исправить обнаруженные проблемы. Это компонент для легкого освоения программного обеспечения. Это способствует Программный интеллект упражняться. Этот процесс обычно называют «линтингом», так как один из первых инструментов статического анализа кода назывался Линт.

Немного статический анализ кода инструменты могут использоваться для помощи в автоматическом обзоре кода. Они не выгодны по сравнению с ручным обзором, однако их можно сделать быстрее и эффективнее.[нужна цитата ] Эти инструменты также инкапсулируют глубокие знания основных правил и семантики, необходимые для выполнения этого анализа типа, так что для этого не требуется, чтобы рецензент человеческого кода обладал таким же уровнем знаний, как и эксперт-человек-аудитор.[2] Много Интегрированные среды разработки также предоставляют базовые функции автоматической проверки кода. Например, Затмение[4] и Microsoft Visual Studio[5] IDE поддерживают различные плагины, облегчающие просмотр кода.

Следующий на статический анализ кода инструменты, есть также инструменты, которые анализируют и визуализировать программные структуры и помочь людям лучше понять это. Такие системы больше ориентированы на анализ, потому что они обычно не содержат заранее определенного набора правил, по которым нужно проверять программное обеспечение. Некоторые из этих инструментов (например, Imagix 4D, Решарпер, SonarJ, Sotoarc, Структура101, ACTool[6]) позволяют определять целевые архитектуры и обеспечивать, чтобы ограничения целевой архитектуры не нарушались фактической реализацией программного обеспечения.

Инструменты автоматической проверки кода

Смотрите также

Рекомендации

  1. ^ Макинтош, Шейн и др. «Влияние охвата ревью кода и участия в рецензировании кода на качество программного обеспечения: пример проектов qt, vtk и itk». Материалы 11-й рабочей конференции по репозиториям программного обеспечения для майнинга. 2014 г. Дои:10.1145/2597073.2597076
  2. ^ а б Гомеш, Иво; Моргадо, Педро; Гомеш, Тьяго; Морейра, Родриго (2009). «Обзор подхода к статическому анализу кода в разработке программного обеспечения» (PDF). Universidade do Porto. Получено 2010-10-03.
  3. ^ «Tricorder: построение экосистемы программного анализа».
  4. ^ «Разработка инструмента совместной проверки кода». www.eclipse.org. Архивировано из оригинал на 2010-04-01. Получено 2010-10-13.
  5. ^ «Подключаемый модуль проверки кода для Visual Studio 2008, ReviewPal». www.codeproject.com. Получено 2010-10-13.
  6. ^ Плагин обеспечения согласованности архитектуры для Eclipse