Идеальная раскладка клавиатуры для [закрытого] программирования

Я часто слышу жалобы, что языки программирования, которые делают интенсивное использование символов для краткости, прежде всего C и C++ (я не собираюсь касаться APL), трудно ввести, потому что они требуют частого использования клавиши Shift. Год или два назад, я устал от него сам, загрузил Создателя Раскладки клавиатуры Microsoft, внес несколько изменений в мое расположение и когда-то не оглянулся назад. Разность оборотов поразительна; с этими немногими простыми изменениями я в состоянии ввести код C++ приблизительно на 30% быстрее, в зависимости от курса о том, насколько волосатый это; лучший из всех, моя скорость печати в обычном обычном тексте не поставлена под угрозу.

Мои вопросы - они: какие альтернативные раскладки клавиатуры существовали для программирования, которые завоевали популярность, какой-либо из них все еще в современном использовании, Вы лично используете какое-либо измененное расположение, и как мое расположение может быть далее оптимизировано?

Я внес следующие изменения в стандартное расположение QWERTY. (Я не использую Dvorak, но существует расположение программиста Dvorak, которое стоит упомянуть.)

  • Числа подкачки с символами в верхнем ряду, потому что долго или повторенные литеральные числа обычно заменяются именованными константами;
  • Подкачайте одинарную левую кавычку с тильдой, потому что одинарные левые кавычки редки на многих языках, но деструкторы распространены в C++;
  • Подкачка минус с подчеркиванием, потому что подчеркивания распространены в идентификаторах;
  • Фигурные скобки подкачки с квадратными скобками, потому что блоки более распространены, чем нижние индексы; и
  • Подкачайте двойную кавычку с одинарной кавычкой, потому что строки более распространены, чем символьные литералы.

Я подозреваю, что это в последний раз, вероятно, будет самым спорным, поскольку это вмешивается больше всего в обычный текст, требуя, чтобы использование сдвига ввело общие сокращения. Это расположение значительно увеличило мою скорость печати в C++, C, Java и Perl, и несколько увеличило его в LISP и Python.

78
задан Jon Purdy 21 February 2010 в 15:57
поделиться

3 ответа

Я по-прежнему считаю, что скорость набора текста не является основным фактором, влияющим на время, необходимое для завершения проекта. Если это так, то существует большая проблема (Недели кодирования экономят нам часы планирования).

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

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

IMHO Одна вещь, которая помогает выше цепочки раскладок - это использование только сочетаний клавиш. Рекомендуется использовать Vim и Emacs. Это делает перемещение текста намного быстрее.

31
ответ дан 24 November 2019 в 10:40
поделиться

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

В более общем плане, я думаю, что настоящие средства повышения производительности связаны со знаниями ...

  • Знание того, какие инструменты и библиотеки доступны и как их использовать.
  • Знание общей структуры кода, над которым вы работаете, а не только своего маленького кусочка.
  • Знание ключевых алгоритмов, шаблонов проектирования и идиом, чтобы вам не приходилось изобретать их заново.
  • Достаточно хорошо зная правила, чтобы быть гибким - вы знаете, когда их нарушать.
  • Знать своих коллег и их сильные и слабые стороны и т. Д. - т.е. знать, когда нужно что-то выяснить самому, а также когда и у кого спросить.

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

В любом случае, у меня есть подозрение, что время, потраченное на изменение и изучение раскладки клавиатуры, отвлечет от более важных вопросов.

9
ответ дан 24 November 2019 в 10:40
поделиться

Изменение раскладки клавиатуры - плохая идея, поскольку это (возможно) увеличит скорость набора текста на одной клавиатуре, но сильно ухудшит скорость набора текста на других клавиатурах или на компьютерах, где нет вашей специальной раскладки. Я обнаружил, что часто лучше приспособиться к настройкам по умолчанию, чем менять их повсюду. (Лично мои пальцы в значительной степени ориентированы на Emacs, что приводит к большому трению при наборе текста в других местах)

.
-4
ответ дан 24 November 2019 в 10:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: