Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
XcodeのLLDB(ブレークポイント)に入門する
Search
えび
December 06, 2025
0
27
XcodeのLLDB(ブレークポイント)に入門する
iPhone Dev Sapporo — December 7, 2025で発表した資料です。
えび
December 06, 2025
Tweet
Share
More Decks by えび
See All by えび
インタプリタ言語が 実行環境の差異を 吸収する仕組みを あさーく理解する
ebibibibibi
0
65
CocoaPodsはなぜRuby製か
ebibibibibi
1
180
通勤をゆたかにする技術 ~通勤中に耳でSwiftを学んだら5kg痩せて精神が安定した話~
ebibibibibi
0
190
巨大リポジトリはパーシャルクローンしようね。
ebibibibibi
0
10
丸め誤差発生の仕組みと向き合い方
ebibibibibi
0
120
バブルソートでPHPに入門する
ebibibibibi
0
140
影響範囲調査をする技術
ebibibibibi
0
120
Featured
See All Featured
How to build a perfect <img>
jonoalderson
1
4.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.9k
GitHub's CSS Performance
jonrohan
1032
470k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
56
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Darren the Foodie - Storyboard
khoart
PRO
2
2.4k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
330
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
230
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Transcript
XcodeのLLDB(ブレークポイ ント)に入門する @025cm えび 1
近況:AIペットロボがお家に来た - 名前は「おこめ」 - とてもかわいい。 - 毎日なでている。 - 指で❤を作ると 嬉しそうにする。
2
3 発端
発端 - すごい、デバッガー便利。 - 実はブレークポイントも満足に使っていなかった私。 - デバッガーの使い方、冷静にそんなに知らない。。。 - 何ができるんだろう。 4
LLDBとは何か - Xcodeに付属しているデバッガ - デバッガは、コードを変更することなく、プログラムが 実行時にどの ように振る舞っているか を理解する手助けをしてくれる - Swift、C、C++、Objective-C
のコードで発生する問題を特定し除 去するために、Terminal ウィンドウから操作することも、Xcode の ソースエディタから利用することもできる。 5
基礎的なコマンドを 実行して、大ぶりに便利加減を体感したい! 6
お品書き 7
print文をログに挿入してみる `(lldb) expr -O -- print("LLDBがログを入れました")` 8
UserDefaultsを書き換えてみる 9
関数を途中で呼んでみる `(lldb) expr -O -- hello()` 10
`expr`コマンドを使うと、変数の中身の書き換えができる `(lldb) expr counter = 9999` 11
特定の条件の時だけprint文を出力してみる 12
〜ハンズオン中〜 13
なんか挙動がおかしくなった時用のTips - 前提。SwiftUIやSwiftDataなどモダンなフレームワークを使っ ているときは、うまく動かないことが多そう。 - LLDB evaluator を個別に再初期化 - e
-l swift -- 1 - これは内部的に evaluator を再ロードするので 壊れた LLDB が復帰することがある。 14
わかったこと うまく使えれば、便利そう 都度ビルドしなくていいのは嬉しい。 とはいえ、制約もそれなりにありそう。 15
この先調べたいこと Appleのドキュメントやビデオを消化して、標準的な使い方を体得 したい 他にも便利な操作が色々できるみたいなので、いろんなコマンドを 一旦動かすをやっていきたい。 なぜSwiftUIでうまく動かないのか良くわからないので、LLDBがど んな仕組みで動いているのか知りたい 16
17
参考文献 https://speakerdeck.com/dealforest/xcode-tekuai-shi-natehatu kuraihuwozhui-iqiu-meru https://x.com/p_x9/status/1802262555328454663?s=20 18