[Из песочницы] Анализ Minor Violations Java кода на платформе Duerank.com (часть 1)

Введение

Что мы знаем об ошибках в коде приложений, написанных на Java? Ну, мы наверняка знаем, что они там встречаются. А насколько часто встречаются? Как много делает разнообразных ошибок в своём коде разработчик? Под ошибками мы понимаем не только баги, но и наличие различных code smell, vulnerabilities, violations. Можно ли это все измерить? Можно ли на основе этих измерений определить качество кода репозитория, разработчики и продукта в целом? Можно ли таким образом сравнивать качество кода различных разработчиков и выбирать себе в партнёры более сильного? Можно ли получить повышение зарплаты, показав прирост качества своего кода и снижение уровня своего технического долга? Задача команды как раз и состоит в том, чтобы утвердительно ответить на все эти вопросы.

В этой работе мы будем рассматривать Minor Violations в Java коде, которые потенциально могут влиять на продуктивность разработчика как, например:

  • неиспользование code convention;
  • finalizer ничего не делает, кроме вызова finalizer суперкласса;
  • слишком длинные строки;
  • switch должен иметь не менее 3 опций и т. д.

Начало работы

Наши исследования основываются на анализе показателей качества исходного кода, написанного на Java, и полученного из открытых репозиториев GitHub. Результаты исследования компоновались в один большой csv-файл, а анализ полученных данных производился с помощью уже ставшего де-факто стандартом стека: scipy, numpy, pandas, matplotlib.
Читать дальше →

from Java – Объектно-ориентированный язык программирования http://bit.ly/2TKxbZf

Leave a Reply