Development

Изучите свой IDE

(В оригинале – Know Your IDE)

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

В течении девяностых годов компании стали замечать потенциал, которые они бы могли получить, обеспечив программистов удобными средствами разработки. Интегрированные среды разработки (IDE) объединили в себе средства редактирования, компиляции, отладки, автоформатирования и другие возможности. Тогда же стали популярными меню и мышь, что привело к тому, что запоминать сложные сочетания клавиш больше было не нужно. Было достаточно выбрать необходимое действие из меню.

В двадцать первом веке IDE настолько распространились, что стали распространяться бесплатно с целью выйти на этот рынок. Современные IDE обладают просто фантастическим набором функциональностей. Моей любимой является автоматический рефакторинг, особенно Extract Method, где можно выделить кусок кода и сделать его функцией. Инструмент сам определит необходимые параметры, которые необходимо передать, что значительно упрощает процесс изменения. Кроме этого, IDE может даже найти другие места в коде, которые можно заменить на вызов этой новой функции, и предложить их заменить тоже.

Еще одно замечательное свойство современных IDE – возможность задавать стиль кодирования. Например, некоторые программисты Java стали делать все параметры final (что мне кажется потерей времени). Однако, чтобы начать следовать их правилу, все, что мне нужно – это настроить в IDE выдавать предупреждение для всех не-final параметров. Правила стиля могут использоваться и для поиска возможных ошибок, таких как сравнение autoboxed-объектов.

К сожалению, современные IDE не требуют больших инвестиций в изучение. Когда я начинал программировать на С под Unix, я должен был потратить значительное количество времени на изучение редактора vi (из-за ступенчатого характера кривой изучения). Это потраченное время потом многократно окупилось. Я даже черновик этой статьи набирал в vi. Современные IDE имеют очень пологую кривую изучения, что приводит к тому, что мало кто изучает что-то еще, кроме самых базовых вещей.

Мои первые шаги по изучению IDE – это запоминание горячих клавиш. Нажать Ctrl+Shift+I гораздо быстрее, чем выбрать мышкой пункт меню, отрываясь от основной работы. Переключения внимания на выбор действия мышью из меню приводят к серьезному снижению производительности.

И наконец, как программисты мы всегда можем обратиться к проверенным временем потоковым утилитам Unix, чтобы сделать что-то с нашим кодом. Например, если во время ревью кода я замечу, что программисты одинаково назвали классы, то чтобы это проверить, мне надо всего лишь набрать следующее:

find . -name "*.java" | sed 's/.*\///' | sort | uniq -c | grep -v "^ *1 " | sort -r

Давайте же потратим немного времени, чтоб работать с IDE более эффективно.

Автор оригинала – Heinz Kabutz