SonarQube: зачем он и как его использовать?
Неделю назад в ИТ-департаменте состоялся митап, где был представлен новый общий для ИТ сервис Sonarqube. «Это не наш инструмент, не мы его писали, но вообще вся команда работала над ним и его внедрением» — рассказал нам Артемий Окулов.
В рамках команды «Качество»: Леша Бояркин, Артур Сагитуллин, Дима Грунский, Алена Косорукова, Артемий Окулов, мы внедряем новый инструмент, имя ему SonarQube. Этот инструмент позволяет измерять «качество» кода проекта и наблюдать с течением времени, как оно изменяется.
Тема актуальная, так как в ИТ-отделе давно ведутся дискуссии, иногда даже очень оживленные, на тему «что важней: качество или скорость?» Но даже те, кто выбирают качество, не всегда могут определить, что есть качественный код (сервис, продукт).
SonarQube позволяет проводить статический анализ кода, и определять в нем явные ошибки и недочеты, что позволит сделать код чище. Также он умеет считать процент покрытия кода тестами, тем самым стимулирует команды писать тесты, проверяющие их код.
Мы очень надеемся, что регулярное использование этого инструмента позволит держать наш код в чистоте. Также в планах есть реализация интерактивной доски с рейтингом команд на основе оценки качества их кода.
Как прошел митап?
Не знаю корректно ли назвать данное событие митапом, но весь доклад мы разбили на две секции.
- Первая — знакомство с инструментом и его возможностями.
- Вторая — демонстрация применения его на реальном проекте (сервисе).
Первая часть была полезна как программистам, так и владельцам продукта.
Вторая — полезна командным девопсам, так как был показан пример того, что им предстоит сделать для своих проектов.
Мы вели запись трансляции, ссылки на трансляции собираем на данной страничке 👉🏼 https://confluence.itlabs.io/pages/viewpage.action?pageId=1639862.
Мысли слушателей о митапе
💬 Егор Косоруков: Нельзя выделить что-то конкретное, просто в целом: ВАУ. Очень полезно, ребята делают крутую и важную штуку. Считаю этот проект — важным шагом для ИТ.
Что запомнилось? Простым языком SonarQube — это такая штука, которая не пускает плохой код в продуктивную среду. Это поможет избегать ошибок и облегчит поддержку проекта в будущем.
💬 Игорь Колобов: Полезно. Запомнился рассказ про возможности настройки просмотра таблицы лидеров: за кем больше проблем зарегистрировано.
Что бы изменил? Основные пункты были рассказаны. Если добавить, то, например, показать как заводить свои правила.
Что запомнилось? Рассказывали про возможности сонаркуба, использование и настройку проекта для интеграции его в сонаркуб.
💬 Женя Середа: Где-то может больно, но в целом полезно. Больно, потому что надо будет исправлять все что он там нашел)
Что бы изменил? Надо работать над правилами: добавлять свои, убирать лишние. Сейчас в проектах много кодовых вонялок, которые по сути ими не являются. Ну, и хотелось бы, чтобы шаг проверки не был обязательным, а остался рекомендательным/информационным.
Что запомнилось? Сервис нашей команды: jolick - сервис агрегатор акций, проверили на сонаре без подготовки и оказалось, что он хорошо написан. Естественно.
🙏🏻 Ребята из команды «Качество» спасибо вам большое за такой интересный и полезный сервис. Желаем вам чистых кодов и вдохновения на дальнейшую работу.