🧰 Канал про эффективную разработку. Полезные сервисы, книги, интересные сообщения из чатов сообщества iOS-разработчиков Swiftme.ru.
⚠️Наши чаты
https://t.me/usovswift
⚠️Ищем по тегам
#инструменты
#вопросы
#книга
#продуктивность
#здоровьеразработчика
#стартап
#пишемхорошийкод
#xcode
#swiftcore
#мероприятия
⚠️Наши чаты
https://t.me/usovswift
⚠️Ищем по тегам
#инструменты
#вопросы
#книга
#продуктивность
#здоровьеразработчика
#стартап
#пишемхорошийкод
#xcode
#swiftcore
#мероприятия
Telegram
JustSwift - сообщество iOS разработчиков
Чат для разработчиков под iOS, macOS на Swift от автора книг Василия Усова
По всем вопросам @dobbywankenoby
По всем вопросам @dobbywankenoby
Шорткаты Xcode. Часть 1
#пишемхорошийкод #инструменты #xcode
Общаясь с разработчиками довольно часто я вижу (и очень удивляюсь этому), что даже матерые девелоперы, пришедшие в iOS с богатым опытом других языков, совершенно не используют горячие клавиши при работе в Xcode. При этом, сколько раз вы видели огромные списки шорткатов? Я думаю видели и не один раз, но из-за размера этих списков прохожили мимо. Я считаю, что:
1. Шорткаты обязательно нужно использовать, это один из показателей профессионализма.
2. Вводить их в необходимо по чуть-чуть, иначе вы их просто не будете использовать.
Сейчас предлагаю попробовать в действии три базовых шортката, которые позволят быстрее редактировать код:
Переместить указатель в начало/конец строки: ⌘ + → или ⌘ + ←
Переместить указатель на слово влево/вправо: ⌥ + → или ⌥ + ←
Выделить текст: комбинации выше + ⇧
Попробуйте их в действии.
Например, чтобы полностью удалить какую-либо строку строку:
1. Переведите указатель в нее
2. Нажмите ⌘ + ← (перейди в начало строки)
3. Нажмите ⇧ + ⌘ + → (выдели весь текст до конца строки)
4. Нажмите Backspace (удали выделенный код)
#пишемхорошийкод #инструменты #xcode
Общаясь с разработчиками довольно часто я вижу (и очень удивляюсь этому), что даже матерые девелоперы, пришедшие в iOS с богатым опытом других языков, совершенно не используют горячие клавиши при работе в Xcode. При этом, сколько раз вы видели огромные списки шорткатов? Я думаю видели и не один раз, но из-за размера этих списков прохожили мимо. Я считаю, что:
1. Шорткаты обязательно нужно использовать, это один из показателей профессионализма.
2. Вводить их в необходимо по чуть-чуть, иначе вы их просто не будете использовать.
Сейчас предлагаю попробовать в действии три базовых шортката, которые позволят быстрее редактировать код:
Переместить указатель в начало/конец строки: ⌘ + → или ⌘ + ←
Переместить указатель на слово влево/вправо: ⌥ + → или ⌥ + ←
Выделить текст: комбинации выше + ⇧
Попробуйте их в действии.
Например, чтобы полностью удалить какую-либо строку строку:
1. Переведите указатель в нее
2. Нажмите ⌘ + ← (перейди в начало строки)
3. Нажмите ⇧ + ⌘ + → (выдели весь текст до конца строки)
4. Нажмите Backspace (удали выделенный код)
Xcode 12.3 - Проблема с периодическим/постоянным зависанием среды разработки
#xcode
Все чаще в сети и тематических чатах появляются сообщения от разработчиков о внезапном зависании Xcode 12.3. Он просто перестает отвечать, постоянно крутится индикатор загрузки. Писать код в таких условиях становится просто невозможно.
Решение: Как оказалось, вся проблема в беспроводной загрузке приложений на физическое устройство. До появления нового патча нам необходимо отказаться от этого способа загрузки, отключив его в окне настроек Устройств и симуляторов.
#xcode
Все чаще в сети и тематических чатах появляются сообщения от разработчиков о внезапном зависании Xcode 12.3. Он просто перестает отвечать, постоянно крутится индикатор загрузки. Писать код в таких условиях становится просто невозможно.
Решение: Как оказалось, вся проблема в беспроводной загрузке приложений на физическое устройство. До появления нового патча нам необходимо отказаться от этого способа загрузки, отключив его в окне настроек Устройств и симуляторов.
⌨️ Организация рабочего пространства Xcode
#xcode #продуктивность
Хочу рассказать вам об одной очень приятной возможности macOS в помощь организации рабочего пространства при работе над проектами - режиме Split View. Сколько я ни пользовался им раньше, но до меня не доходило, что его можно (и нужно) применять для одновременного и очень удобного отображения среды разработки и симулятора, без необходимости перетаскивать окна, и переключаться между ними, и т.д.
- Откройте проект в Xcode, запустите симулятор.
- В главном меню Xcode выберите пункт Window - Tile Window To Right Screen.
- Выберите симулятор в качестве окна, отображающегося в другой части экрана.
- Измените ширину/соотношение экранов
Profit! Результат на скриншоте выше
P.S. Актуально даже на маленьких экранах, так как позволяет значительно уменьшить размер симулятора и убрать док.
#xcode #продуктивность
Хочу рассказать вам об одной очень приятной возможности macOS в помощь организации рабочего пространства при работе над проектами - режиме Split View. Сколько я ни пользовался им раньше, но до меня не доходило, что его можно (и нужно) применять для одновременного и очень удобного отображения среды разработки и симулятора, без необходимости перетаскивать окна, и переключаться между ними, и т.д.
- Откройте проект в Xcode, запустите симулятор.
- В главном меню Xcode выберите пункт Window - Tile Window To Right Screen.
- Выберите симулятор в качестве окна, отображающегося в другой части экрана.
- Измените ширину/соотношение экранов
Profit! Результат на скриншоте выше
P.S. Актуально даже на маленьких экранах, так как позволяет значительно уменьшить размер симулятора и убрать док.
✈TestFlight. Как отключить запрос о соответствии экспортным требования
Каждый раз выкладывая приложения приходится заходить в AppStore Connect и нажимать "Нет" в этом окне (см. рис.), чтобы выложить приложение? А его очень просто отключить.
Для этого в Info.plist создайте ключ App Uses Non-Exempt Encryption со значением NO. После этого все сборки будут автоматически становиться доступными для пользователей.
За подсказку спасибо @Higderin
Другие советы по тегу #xcode
Каждый раз выкладывая приложения приходится заходить в AppStore Connect и нажимать "Нет" в этом окне (см. рис.), чтобы выложить приложение? А его очень просто отключить.
Для этого в Info.plist создайте ключ App Uses Non-Exempt Encryption со значением NO. После этого все сборки будут автоматически становиться доступными для пользователей.
За подсказку спасибо @Higderin
Другие советы по тегу #xcode
🔧LLDB - это низкоуровневый отладчик (debugger), входящий в состав базового элемента компилятора Swift - LLVM. Многие из нас создают программы не зная о том, что могут использовать его возможности при отладке, об этом мы сегодня и поговорим. LLDB имеет множество команд, которые можно использовать прямо в консоли Xcode.
Как только вы приостановили выполнение приложения (например по сработавшему брейкпоинту), в консоли появляется надпись (lldb), сообщаяющая, что вы можете вводить требуемые команды.
1️⃣Вывод значения параметра
Команды print и po, например
(lldb) po UIApplication.shared.delegate.someGlobalSet
При этом в консоли будет выведена полная структура объекта. Команды po и print имею немного отличающийся формат вывода.
po ...
print ...
2️⃣Изменение значение параметра прямо в ходе исполнения
Команды expression и e, например
(lldb) e parameterName = someValue
Эта команда позволит изменить значение параметра parameterName на someValue. При этом прямо в консоли присутсвует автодополнение, а также происходит проверка типов и изменяемости параметров.
Данная команда поддеживает различные флаги, позволяющие значительно расширить ее функциональность.
3️⃣Текущий состав фрейма стека текущего потока
Команда frame, например
(lldb) frame variable
Просто выводит простыню-структуру текущего фрейма (если не помните, что это, то читайте про стек, кучу и память).
Эти команды лишь для затравки вашего интереса. LLDB предоставлет стооолько всего интересно, что я настоятельно рекомендую вам продолжить знакомтсво с ним самостоятельно. Например с помощью этой статьи или этого видео.
Другие полезные штуки по хэштегам #xcode #инструменты #пишемхорошийкод
Как только вы приостановили выполнение приложения (например по сработавшему брейкпоинту), в консоли появляется надпись (lldb), сообщаяющая, что вы можете вводить требуемые команды.
1️⃣Вывод значения параметра
Команды print и po, например
(lldb) po UIApplication.shared.delegate.someGlobalSet
При этом в консоли будет выведена полная структура объекта. Команды po и print имею немного отличающийся формат вывода.
po ...
▿ 2 elements
- 0 : 5
- 1 : 6
print ...
(Set<Int>) $R7 = 2 values {
[0] = 5
[1] = 6
}
2️⃣Изменение значение параметра прямо в ходе исполнения
Команды expression и e, например
(lldb) e parameterName = someValue
Эта команда позволит изменить значение параметра parameterName на someValue. При этом прямо в консоли присутсвует автодополнение, а также происходит проверка типов и изменяемости параметров.
Данная команда поддеживает различные флаги, позволяющие значительно расширить ее функциональность.
3️⃣Текущий состав фрейма стека текущего потока
Команда frame, например
(lldb) frame variable
Просто выводит простыню-структуру текущего фрейма (если не помните, что это, то читайте про стек, кучу и память).
Эти команды лишь для затравки вашего интереса. LLDB предоставлет стооолько всего интересно, что я настоятельно рекомендую вам продолжить знакомтсво с ним самостоятельно. Например с помощью этой статьи или этого видео.
Другие полезные штуки по хэштегам #xcode #инструменты #пишемхорошийкод
Medium
Debugging Swift code with LLDB
It’s extremely important to make the debugging process as simple as possible. Let’s break down some of the LLDB tricks which I personally use…