`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

70% кода на GitHub является дублирующим

0 
 
70% кода на GitHub является дублирующим

Учитывая, что совместное использование кода является важной частью функциональности GitHub, неудивительно, что на платформе хранится много дублированного кода, если точнее — 70%, как выяснилось в новом исследовании. Специалисты Microsoft, University of California и Чешского технического универсистета представили на конференции SPLASH в Ванкувере результаты исследования, которое показало, что из 428 миллионов файлов на GitHub только 85 миллионов являются уникальными.

Международная команда из восьми исследователей не собиралась измерять степень дублирования GitHub. Их первоначальная цель состояла в том, чтобы попытаться определить «зернистость» копирования — то есть, сколько файлов было изменено между разными клонами. Но по пути они выявили большую долю дублирования на уровне файлов, которая заставила их изменить направление исследования.

JavaScript оказался самой клонированной средой: всего 6% файлов породили остальные 94% файлов JavaScript на GitHub. Из экосистемы C++ 73% файлов были дублирующими; в случае Python — 71%. Разработчики Java являются наиболее оригинальными из четырех исследованных сред, но даже для Java 40% файлов являются дубликатами.

При этом отмечается, что степень дублирования в большей степени определяется наличием зависимостей в коде. Хорошим примером является JavaScript: программисты, создающие некий проект, часто размещают библиотеки NPM в своих новых репозиториях, как если бы они были частью кода приложения.

Это является известной проблеммой экосистемы npm. Исследователи отмечают, что максимальная обнаруженная вложенность в таких проектах достигала 47 уровней, тогда как в среднем она составила пять уровней.

Целью этого исследования было улучшение работы других ученых. Любой, кто изучает программное обеспечение с помощью GitHub, вероятно, часто использует случайные выборки. Авторы исследования утверждают, что при этом необходимо учитывать дублирование, особенно учитывая, какие масштабы оно имеет.

0 
 

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT