#github
Вопрос:
Проекты на GitHub имеют график языков, который вычисляет долю конкретного языка программирования в проекте.
Я бы наивно подумал, что самый простой подход — просмотреть все файлы с заданным расширением в проекте и суммировать количество строк (слов или символов), а затем эта сумма для определенного языка делится на сумму для всех языков.
Например, если проекты содержат .py
файлы со [200, 100, 500]
строками, а .cpp
файлы со [800, 1600]
строками, я бы ожидал, что вычисленное соотношение будет :
- 66,6% C
- 33,3% Python
Однако для прикрепленного изображения в файлах гораздо больше кода (строк / слов) .py
, чем в .ipynb
.
Следовательно, должна быть другая стратегия для вычисления доли. Как именно?
Комментарии:
1. Как вы посчитали количество строк в записной книжке? A
.ipynb
— это файл JSON, который также содержит все метаданные и выходные данные (изображения в кодировке base64), поэтому, если эти строки будут подсчитаны, это будет намного больше, чем код, который вы фактически записали во входные ячейки.
Ответ №1:
Я нашел ответ здесь: https://softwareengineering.stackexchange.com/a/156653
В Linguist он использует размеры файлов для определения процентного соотношения языков.
Комментарии:
1. Размер файла имеет смысл.