Частота символов в языках программирования
Я ищу какую-то ссылку, которая показывает частоту символов популярных языков программирования. Я пытаюсь разработать оптимальную раскладку клавиатуры для программирования.
Если такой ссылки нет, я бы не прочь создать простую утилиту, которая это понимает. Однако мне нужны предложения относительно того, какие файлы нужно анализировать для каждого языка.
Одна из проблем, которую я могу предвидеть, - это сказать, что я получаю код objective-c, если это простая программа без объектов, тогда клавиши [ и ] будут намного реже, чем средний objective-c файл. Итак, я бы сказал, что одно из рекомендаций заключается в том, что образец кода должен быть репрезентативным для среднего файла и использовать наиболее часто используемые функции языка.
Изначально я думал, что должен получить тот же код, написанный на разных языках, но я не уверен, что это хорошая идея, поскольку некоторые языки имеют разные приложения, чем другие.
Ответы
Ответ 1
Для больших образцов кода, используемых для статистического анализа, вы можете попробовать просматривать популярные проекты с открытым исходным кодом или искать на Koders по языку.
Несколько лет назад я сделал несколько простых изменений в макете QWERTY, и с тех пор я использую его как универсальный макет:
- Обмен запятыми для соответствующих символов сдвига.
- Swap
_
и -
: имена с символами подчеркивания являются общими, и теперь -
и +
оба требуют Shift.
- Swap
[]
и {}
: блоки более распространены, чем индексы.
Плюс две дополнительные изменения, по вкусу:
- Swap
`
и ~
: деструкторы являются общими.
- Swap
'
и "
: строки чаще встречаются, чем символы.
Последнее единственное, что обычно мешает печатать обычный текст на английском языке. Макет прекрасно работает для С++, Perl и всего, что я использовал за последние два или три года. Заметное увеличение скорости происходит из-за резкого сокращения необходимости нажатия клавиши Shift. Я нахожу, что использование Shift для чисел не имеет большого значения, так как в любом случае числовая панель обычно быстрее.
Ответ 2
Книга Новый стандарт C: экономический и культурный комментарий содержит множество измерений использования источника C. Таблицы использования и таблицы доступны в виде отдельного pdf
Ответ 3
То, что вы ищете, является хорошим корпусом языков программирования. Хотя ничего не возникало в беглом Googling, следующие ссылки, надеюсь, окажутся полезными, если вы создадите свой собственный инструмент.
Новая структура для обнаружения плагиата исходного кода
Calgary Corpus
Создание NLP Corpus из исходного кода Java
Компьютерная наука Text Corpus/Поисковая система X-Tec и ее приложения
Поиск тем поиска из журнала использования поисковой системы
Ответ 4
Это версия версии Dvorak, оптимизированной для программистов.
http://www.kaufmann.no/roland/dvorak/
Если вы используете Ubuntu, он уже находится в вашей системе.
Ответ 5
Существует обширная коллекция программного обеспечения с открытым исходным кодом, которое вы можете измерить, чтобы получить хорошие данные о частоте символов. Sourceforge и github будут местами для поиска.
Разработчики не просто пишут код, но также пишут проектные документы, электронные письма и ответы на вопросы о переполнении стека. Может быть, установка ключевого регистратора на нескольких компьютерах с согласным разработчиком будет лучшим способом.