Описание тега code-analysis
Анализ кода - это процесс анализа кода приложения для обнаружения, просмотра, проверки или проверки определенных свойств приложения. Это полезно в процессе разработки и для тестирования приложения перед его переводом в рабочий режим, особенно для проверки аспектов, связанных с безопасностью. Анализ кода можно классифицировать с нескольких точек зрения, в том числе:
1. Что можно анализировать: анализировать исходный код или двоичный код (байт-код) приложения. У обеих этих категорий есть свои плюсы и минусы.
2. Как и когда следует анализировать код: код можно анализировать статически (без его выполнения) или динамически (во время выполнения приложения). Статический анализ, будучи консервативным, склонен к ложноположительным результатам, но он является исчерпывающим. С другой стороны, динамический анализ, будучи очень точным, может пропустить определенные поведения, которые не проявляются ни в одном отслеживаемом выполнении (потому что динамический анализ анализирует только код, который выполняется, то есть когда выполняются определенные условия)
3. Цель анализа: могут быть обнаруженынедостатки, такие как разыменование нулевого указателя или передача строки ASCII вместо строки Unicode. Кроме того, можно найти такие аспекты кода, как построение различных графиков зависимостей или определение условий, при которых будет происходить рекурсия.