2010-08-06 4 views
14

Я ищу какую-то ссылку, которая показывает частоту символов популярных языков программирования. Я пытаюсь разработать оптимальную раскладку клавиатуры для программирования.Частота символов в языках программирования

Если такой ссылки нет, я бы не прочь создать простую утилиту, которая показывает это. Однако мне нужны предложения относительно того, какие файлы нужно анализировать для каждого языка.

Одна из проблем, я могу предвидеть это сказать, я получаю некоторые Objective-C код, если это простая программа, без каких-либо объектов, то [ и ] ключи будут гораздо реже, чем в среднем цели -c файл. Таким образом, я бы сказал, что одно из рекомендаций заключается в том, что образец кода должен представлять собой средний файл и использовать наиболее часто используемые функции языка.

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

+0

Вы разрабатываете раскладку клавиатуры для ноутбука или полноразмерной клавиатуры? (Моя догадка заключается в том, что вы хотите, чтобы вы не требовали, чтобы пользователи нажимали несколько сменных клавиш, чтобы получить символы программирования, но на маленьких клавиатурах это на самом деле нельзя избежать ...) –

+0

Звучит интересно - всегда отмечали, что наставники «Mavis Bacon» и т. Д. на самом деле не предназначены для кодеров. Но никогда не думал о том, чтобы сменить клавиатуру;) – StuartLC

ответ

0

Их версия версии клавиатуры Dvorak доступна, оптимизирована для программистов.

http://www.kaufmann.no/roland/dvorak/

Если вы решили использовать Ubuntu, это уже на вашей системе.

+0

Да, это именно та клавиатура, которую я настраиваю. Мне не нравится, как трудно найти знак равенства. – Senseful

+0

Действительно? просто растяните указательный палец. Работает для меня;) –

+0

Я использую мизинец ... – NullUserException

0

Существует обширная коллекция программного обеспечения с открытым исходным кодом, которое вы можете измерить, чтобы получить хорошие данные о частоте символов. Sourceforge и github были бы местами для просмотра.

Разработчики не просто пишут код, но также пишут проектные документы, электронные письма и ответы на вопросы о переполнении стека. Может быть, установка ключевого регистратора на нескольких компьютерах с согласным разработчиком будет лучшим способом.

4

Для больших образцов кода, которые можно использовать для статистического анализа, вы можете попробовать просматривать популярные проекты с открытым исходным кодом или искать по Koders по языку.

Я сделал несколько простых изменений в макет QWERTY несколько лет назад, и я использую его с тех пор, как мой макет общего назначения:

  • своп цифры для их соответствующих сдвиговых-символов.
  • Swap _ и -: имена с подчеркиванием являются общими, и теперь - и + оба требуют сдвиг.
  • Обмен [] и {}: блоки более распространены, чем индексы.

Плюс два дополнительных изменения, по вкусу:

  • Своп ` и ~: деструкторы являются общими.
  • Обмен ' и ": строки чаще встречаются, чем символы.

Последнее единственное, что обычно мешает печатать обычный текст на английском языке. Макет прекрасно работает для C++, Perl и всего, что я использовал за последние два или три года.Заметное увеличение скорости происходит из-за резкого сокращения необходимости нажатия клавиши Shift. Я считаю, что использование Shift для чисел не имеет большого значения, поскольку в любом случае числовая клавиатура обычно быстрее.

1

Что вы ищете, это хороший язык программирования corpus. В то время как ничто так не появилось в беглом Googling, следующие ссылки, надеюсь, окажутся полезными, если вы создадите свой собственный инструмент.

A novel framework to detect source code plagiarism

Calgary Corpus

Generating an NLP Corpus from Java Source Code

A Computer Science Text Corpus/Search Engine X-Tec and Its Applications

Mining search topics from a code search engine usage log

Смежные вопросы