Специалисты сервиса GitClear проанализировали базу данных об изменениях кода в открытых проектах. Исследователи считают, что с появлением GitHub Copilot разработчики стали чаще нарушать фундаментальные принципы программирования.
Данные для исследования
В распоряжении экспертов GitClear была база изменений кода, учитывающая следующие виды правок:
- добавление новых уникальных строк;
- обновление существующих строк (больше чем на три слова);
- копирование и вставка одинаковых фрагментов в рамках одного или более коммитов;
- удаление кода без восстановления в течение двух недель после обновления;
- перемещение строк в рамках одного проекта или файла;
- выполнение операции «найти/заменить».
У исследователей был доступ к почти миллиарду строк кода — как из открытых проектов, так и из кодовых баз частных клиентов GitClear. Для анализа использовали только изменённые в последние 48 месяцев фрагменты. Этим условиям соответствовали 153 млн строк кода.
Результаты анализа
Исследование показало, что программисты начали чаще нарушать принцип DRY (Don’t repeat yourself). Кроме того, вырос показатель «оттока кода». Разработчики добавляют в проекты фрагменты, которые полностью удаляют или значительно изменяют в течение пары недель.
Качество кода начало снижаться сразу же после релиза первой версии GitHub Copilot и продолжает падать до сих пор. Эксперты считают, что программисты не используют в проекте уже готовые конструкции, а просят чат-бота написать новые. Это помогает им сэкономить время, но портит кодовую базу.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!