TGViewer
Мобильный кот Мобильный кот @ios_appdev · 2.49K subscribers
Post #67 2.48K
🔧LLDB - это низкоуровневый отладчик (debugger), входящий в состав базового элемента компилятора Swift - LLVM. Многие из нас создают программы не зная о том, что могут использовать его возможности при отладке, об этом мы сегодня и поговорим. 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 Debugging Swift code with LLDB As engineers we spend almost 70% of our time on debugging. The rest 20% goes on thinking about the architectural approaches + communication with teammates and just 10% …
More from @ios_appdev
  1. Nov 30, 2025🤔 Embedded Swift в Swift 6.3 Мы уже видели, как Swift успешно захватил server-side, linux…
  2. Nov 19, 2025Когда структуры в Swift — не твои бро Один из лучших докладов на Mobius 2025 Autumn. Очень…
  3. Oct 17, 2025🍷Отличный повод выйти из техлидского запоя и запилить пятничный пост после полугода шоков…
  4. Jun 24, 2025#видеозаписи #МобильныйВторник Открываем новую видеозапись выступления: Кирилл Шумаков, Ва…
  5. Apr 16, 2025🫠 Прощай, Swift Сегодня второй рабочий день в роли Техлида. Два дня уже не программировал…
  6. Apr 16, 2025Презентация с доклада. PDF без анимаций, но для общей картины подходит отлично.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →