Как разработчики iOS, мы проводим большую часть времени за работой в Xcode. Для сравнения: это примерно 20–35 часов в неделю! Что, если я скажу вам, что вы можете использовать это время неэффективно и можете оптимизировать его?

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

В конце дня вы достигнете того же этажа, но ценой времени и усталости. То же самое применимо к использованию Xcode без ярлыков.

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

Мы разделим их на разделы Просмотр и навигация по проекту, Редактирование кода и Сборка проекта. Некоторые из них могут быть хорошо известны, а некоторые — новы для вас, но я уверен, что все перечисленные необходимы каждому iOS-разработчику.

Плюс очень полезный бонус в конце статьи 👀

Прежде всего, давайте договоримся о словаре символов. В этой статье я буду следовать следующей настройке:

⌘ – клавиша Command
⌃ – клавиша Control или Ctrl
⌥ – клавиша Option или клавиша Alt
⇧ – клавиша Shift

Просмотр и навигация по проекту

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

Первый — ⌘ + ⇧ + O. Чтобы открыть файл по его имени, просто нажмите эту комбинацию, введите имя файла, и вы увидите список параметров, соответствующих вашему вводу. Вы можете искать по имени класса/структуры и объявлению методов. Это самый быстрый способ обойти большие проекты, когда вы пытаетесь что-то найти, особенно при входе в новый проект.

Следующий — ⌘ + J — фокус на файле в навигаторе. Это очень полезно при работе над проектами со сложной структурой — вы можете легко оказаться в неизвестном месте, и этот ярлык покажет вам, где именно вы находитесь сейчас.

⌘ + N — создать новый файл. Общий ярлык для всех IDE, но в сочетании с предыдущим вы сможете очень быстро создать новый файл в нужном месте вашего проекта.

+ ⌘ + Y — показать/скрыть область отладки. Также очень удобно для быстрого доступа к виду области отладки.

+ + Enter — переключить предварительный просмотр SwiftUI/холст. При работе с SwiftUI это полезно для переключения дополнительного представления Предварительный просмотр, когда это необходимо.

^ + ⌘+ J — переход к определению. После выбора свойства или функции просто используйте этот ярлык, и он приведет вас к определению выбора.

⌘ + ⌃ + стрелки влево/вправо — переход между предыдущим и следующим открытым файлом.

⌘ + ⇧ + 0 (ноль) — показать вид документации. Я рекомендую вам использовать его время от времени или при решении некоторых неизвестных проблем со Swift: документация Apple очень удобна для пользователя и в ней легко ориентироваться.

Редактирование кода

Теперь мы сосредоточимся на том, как ускорить редактирование кода с помощью ярлыков.

⌘ + ⌃+ E — выбрать все в области видимости. Очень полезный ярлык для рефакторинга небольших фрагментов кода в локальной области.

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

⌘ + ⌥ + E — найти в текущем файле. Просто выберите слово и нажмите этот ярлык, чтобы перейти к следующему использованию этого слова.

Как вы можете видеть выше, помимо выбора всех вариантов использования effort он также нашел их в overallEffort,, поэтому будьте осторожны, этот ярлык нечувствителен к регистру и соответствует по частям, а не по всему слову.

⌃ + I — изменить отступ кода. После внесения некоторых изменений в ваши функции вы можете заметить, что отступы кода могут испортиться. Используйте этот ярлык, чтобы быстро исправить свой код.

⌘ + ⌥ + стрелки вверх/вниз — метод или класс свертывания/развертывания. Он будет охватывать выбранную часть кода. Очень полезно использовать это в больших и сложных частях кода, просто чтобы сосредоточиться на том, что важно прямо сейчас.

⌘ + ⌥ + / — создать документацию. Он просто вставляет шаблон документации прямо над выделенным фрагментом, что намного быстрее, чем писать все это самостоятельно.

Создание проекта

Что касается ярлыков сборки проекта, я считаю их наиболее полезными:

  • + R — запустить текущую цель
  • + B — построить текущую цель
  • + U — собрать и запустить цель тестирования. Добавьте (+ + U), чтобы просто строить, не бегая. Или добавьте (+ + U), чтобы пропустить сборку, когда она не нужна.
  • ⌃ + ⌥ + ⌘+ G — повторно запустить предыдущий тестовый пример. Очень полезно при исправлении всего одного проблемного теста. Если ваше последнее действие тестирования запускало весь класс, оно запустит весь класс снова.
  • ⌘ + ⇧ + K — чистая сборка

Бонусное время!

Для быстрого многострочного изменения кода вы можете использовать ⌃ + ⇧ + стрелки вверх/вниз. Таким образом вы активируете многострочный курсор, который может быть оченьудобным для рефакторинга фрагментов кода без повторений. А чтобы это звучало еще лучше, вы можете щелкать мышью, чтобы выбирать определенные части строк для редактирования!

Я могу гарантировать, что после нескольких использований он вам понравится, и вы не сможете представить свою разработку Xcode без этого ярлыка!

А еще в качестве бонуса-бонуса вы можете менять и создавать свои ярлыки в Xcode. Для этого перейдите в Xcode → Настройки → Привязки клавиш.

Однако будьте осторожны и не используйте некоторые системные ярлыки macOS, потому что ОС будет относиться к ним с большим приоритетом.

В заключение я бы сказал, что использование ярлыков Xcode — довольно хороший показатель того, насколько опытен разработчик. Проведя несколько собеседований на iOS с сеансами кодирования/отладки в реальном времени, я всегда обращал внимание, когда собеседник их использовал. Это показывает, что человек не новичок в разработке iOS и заинтересован в том, чтобы стать более опытным, научившись использовать инструмент, а не просто создавать проект и уметь его запускать.

Вот и все! Я надеюсь, что вы узнали что-то новое из этой статьи и что я помог вам стать еще более продуктивным разработчиком iOS, чем вы были раньше.

Я пропустил какие-нибудь интересные ярлыки? Пишите в комментариях, давайте учиться вместе!