ANDROID_LIVE Telegram 282
​​Статический анализ кода
#разработка #комментарии

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

SpotBugs — достаточно распространенное решение, которое позволяет строить отчеты по текущей базе кода. Решение, которое не заработало у меня на проекте из-за наличия flavor.

Infer — решение для статического анализа от Facebook, основано также на отчетах. Кроме того, позволяет строить отчеты для вновь добавленного кода. Не смог оценить решение из-за странных несовместимостей с последней версией JDK. Но выглядит интересно.

Gnag — представляет из себя комбайн нескольких решений: checkstyle, pmd, findbugs, ktlint, detekt. Шикарное решение, которое работает сейчас на нашем проекте. Отдельной крутой фичей является анализ пулреквеста и добавление комментариев в нем, что позволяет встроить Gnag в CI.

SonarQube — представляет из себя утилиту для детального отчета на сервере, показа текущего статуса приложения и количества критичных багов. Очень удачное решение, однако стартовая версия имеет ряд ограничений: анализ только master-ветки, отсутствие интеграции в CI, отсутствие интеграции с GitHub. Но получать отчет и анализировать его вы сможете и в ней.

После поиска, я пришел к выводу, что есть очень мало бесплатных и хорошо работающих решений. Некоторые из них работают плохо, другие невозможно подключить к проекту из-за непонятных несовместимостей с текущими библиотеками. И я уже не говорю про встраивание их в процесс CI. Остаются только платные решения, благо цена на них не слишком высока для коммерческих проектов, а для open-source чаще всего и вовсе отсутствует.

А что вы используете на своих проектах?
👍1



tgoop.com/android_live/282
Create:
Last Update:

​​Статический анализ кода
#разработка #комментарии

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

SpotBugs — достаточно распространенное решение, которое позволяет строить отчеты по текущей базе кода. Решение, которое не заработало у меня на проекте из-за наличия flavor.

Infer — решение для статического анализа от Facebook, основано также на отчетах. Кроме того, позволяет строить отчеты для вновь добавленного кода. Не смог оценить решение из-за странных несовместимостей с последней версией JDK. Но выглядит интересно.

Gnag — представляет из себя комбайн нескольких решений: checkstyle, pmd, findbugs, ktlint, detekt. Шикарное решение, которое работает сейчас на нашем проекте. Отдельной крутой фичей является анализ пулреквеста и добавление комментариев в нем, что позволяет встроить Gnag в CI.

SonarQube — представляет из себя утилиту для детального отчета на сервере, показа текущего статуса приложения и количества критичных багов. Очень удачное решение, однако стартовая версия имеет ряд ограничений: анализ только master-ветки, отсутствие интеграции в CI, отсутствие интеграции с GitHub. Но получать отчет и анализировать его вы сможете и в ней.

После поиска, я пришел к выводу, что есть очень мало бесплатных и хорошо работающих решений. Некоторые из них работают плохо, другие невозможно подключить к проекту из-за непонятных несовместимостей с текущими библиотеками. И я уже не говорю про встраивание их в процесс CI. Остаются только платные решения, благо цена на них не слишком высока для коммерческих проектов, а для open-source чаще всего и вовсе отсутствует.

А что вы используете на своих проектах?

BY Android Live 🤖




Share with your friend now:
tgoop.com/android_live/282

View MORE
Open in Telegram


Telegram News

Date: |

Hui said the messages, which included urging the disruption of airport operations, were attempts to incite followers to make use of poisonous, corrosive or flammable substances to vandalize police vehicles, and also called on others to make weapons to harm police. Done! Now you’re the proud owner of a Telegram channel. The next step is to set up and customize your channel. Telegram users themselves will be able to flag and report potentially false content. The group also hosted discussions on committing arson, Judge Hui said, including setting roadblocks on fire, hurling petrol bombs at police stations and teaching people to make such weapons. The conversation linked to arson went on for two to three months, Hui said. How to create a business channel on Telegram? (Tutorial)
from us


Telegram Android Live 🤖
FROM American