Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
まだ NSLog で消耗しているの?
Search
Toshihiro Morimoto
March 07, 2015
Technology
0
12k
まだ NSLog で消耗しているの?
yidev 第18回での発表資料です
Toshihiro Morimoto
March 07, 2015
Tweet
Share
More Decks by Toshihiro Morimoto
See All by Toshihiro Morimoto
Xcode8 で開発はどうかわったのか
dealforest
10
6.3k
魅せるデバッグ技術
dealforest
4
1.5k
LLDB の世界からみた Swift
dealforest
4
5.3k
Xcode で快適なデバッグライフを追い求める
dealforest
29
24k
Intrducing debug in WWDC2016
dealforest
3
780
swift build と Xcode での Build の違い
dealforest
3
2.1k
RIP Xcode Plugin 🙏
dealforest
0
4.8k
Introducing Xcode Editor Extension
dealforest
2
4.6k
Introducing Anglerfish
dealforest
2
3.4k
Other Decks in Technology
See All in Technology
SREが取り組むデプロイ高速化 ─ Docker Buildを最適化した話
capytan
0
150
【開発を止めるな】機能追加と並行して進めるアーキテクチャ改善/Keep Shipping: Architecture Improvements Without Pausing Dev
bitkey
PRO
1
130
Next.js 16の新機能 Cache Components について
sutetotanuki
0
190
「図面」から「法則」へ 〜メタ視点で読み解く現代のソフトウェアアーキテクチャ〜
scova0731
0
510
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
270
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
"人"が頑張るAI駆動開発
yokomachi
1
550
_第4回__AIxIoTビジネス共創ラボ紹介資料_20251203.pdf
iotcomjpadmin
0
140
20251222_サンフランシスコサバイバル術
ponponmikankan
2
140
ESXi のAIOps だ!2025冬
unnowataru
0
370
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
190
AWS re:Invent 2025~初参加の成果と学び~
kubomasataka
1
190
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
515
110k
We Are The Robots
honzajavorek
0
120
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
200
Google's AI Overviews - The New Search
badams
0
870
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
How to make the Groovebox
asonas
2
1.8k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
210
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Transcript
·ͩ NSLog Ͱফ͍ͯ͠Δͷʁ 2015/03/07 yidev#18 @dealforest Toshihro Morimoto
None
ࣗݾհ
LLVM (ಛʹLLDB) ʹ·ͬͯ·͢
DFTDebugScreenshot
Crying DFTDebugScreenshot
Crying DFTDebugScreenshot cocoapods-browser
Crying DFTDebugScreenshot cocoapods-browser NEW!!
σόοάख๏ • NSLog • Breakpoint • ৺؟ etc…
ਓͳͥ NSLog Ͱফ͢Δͷ͔
ͦͦফͱԿ͔
ফͱ • ͬͯຏΓݮͬͨΓແ͘ͳͬͨΓ͢Δ ͜ͱ • ମྗؾྗΛ͍Ռͨ͢͜ͱ by wikpedia
࣭ʮফ͍ͯ͠Δͱײ͡Δਓʯ
NSLog Λ͏࣌ͲΜͳ࣌ʁʁ • ϩΪϯά • ϓϦϯτσόοά
ͭ·ΓϓϦϯτσόοά ͯ͠Δͱ͖ʹɺզʑ ফΛ͍ͯ͘͠Θ͚Ͱ͢Ͷ
NSLog σϝϦοτ • ϩά͕େྔʹͰͯΔ߹(ྫ͑ HTTP ͷϨεϙϯεΛग़ྗ͍ͯ͠Δͱ͔)ʹɺ ࠐΜͩϩά͕ྲྀΕ͍ͯ͘ͷͰ͔Γ ʹ͍͘ • format
Λຖճ͔͔ͳ͍ͱ͍͚ͳ͍ • ߏମΛग़ྗ͢Δͱ͖ΊΜͲ͍͘͞ • Ϗϧυ͠ͳ͓͞ͳ͍ͱ͍͚ͳ͍
Ϗϧυ͠ͳ͓͞ͳ͍ͱ͍͚ͳ͍
େࣄͳ͜ͱͳͷͰ̎ճݴ͍·ͨ͠
ফ͍ͯ͘͠…
͜͜Ͱ Breakpoint ͷग़൪Ͱ͢
Breakpoint ͷϝϦοτ • ίϯιʔϧͰ LLDB ͷίϚϯυΛೖྗ͠ ͯཉ͍͠ใ͕ಘΒΕΔ • Ϗϧυ͠ͳ͓͞ͳͯ͘Α͍
Ϗϧυ͠ͳ͓͞ͳ͍͍ͯ͘
\(^o^)/\(^o^)/\(^o^)/\(^o^)/
Breakpoint ͷσϝϦοτ • ಛఆͷมΛ֬ೝ͢ΔͨΊʹϒϨΠΫ ͢ΔʹԿೖྗ͢Δͷ͕ΊΜͲ͘ ͍͞ • ίϚϯυཤྺૢ࡞͕ශऑ
ͱ͍͑… 1. ϒϨΠΫʂ 2. εςοϓ࣮ߦ 3. มग़ྗ 4. ղআʂ
܁Γฦ͢ͱ ফ͍ͯ͘͠…
ΊΜͲ͘͘͞ͳͬͯ ݁ہ NSLog Λॻ͍ͯ͠·͏
/(^o^)\ Φϫλ
࣮ࡍʹσόοά͢Δ࣌ ͳΜ͔ͩΜͩͰ NSLog Λ ͍ͬͯΔͷͰͳ͍Ͱ͠ΐ͏͔
ͦΜͳ͋ͳͨͷͨΊʹ
ϓϦϒϨͷ͢ʍΊ
]
]
ϓϦϒϨ(ޠ)
Φεεϝ!!
ϒϨʔΫϙΠϯτͷઆ໌͕ Θ͔Γ͍͢Ͱ͢
ͱ͍͑…
ϓϦϒϨͷઃఆ͕खؒ
ΊΜͲ͘͘͞ͳͬͯ ݁ہ NSLog Λॻ͍ͯ͠·͏
ϓϩάϥϚͷࡾେඒಙ • ଵଦ • ؾ • ၗຫ by Larry Wall
ͱɺ͍͏Θ͚Ͱ࡞ͬͨΑ
https://github.com/dealforest/tuna
Tuna ͱ • Xcode Plugin • ϓϦϒϨΛ؆୯ʹઃఆͰ͖Δ • BackTrace Λग़ྗ͢ΔϒϨΠΫϙΠϯτ
؆୯ʹઃఆͰ͖ΔΑ
ΞΫγϣϯ͖ϒϨΠΫϙΠϯτΛ ؆୯ʹઃఆͰ͖·͢
Δ͜ͱγϯϓϧ͚ͩͲڧྗʂ
Demo ΛݟͯΒ͑Ε ͕͞ΘΔ͔ͳͱ
None
XVim ͍ vnoremap <enter> :xcmenucmd Set Breakpoint Current Line<CR> vnoremap
<C-enter> :xcmenucmd Set Breakpoint Next Line<CR> noremap \<enter> :xcmenucmd Set Backtrace Breakpoint<CR> ~/.xvimrc
DEMO
ҰͰԿΛग़ྗ͠Α͏ͱ͍ͯ͠Δͷ͔͕ UI্͔ΒஅͰ͖ͳ͍ͨΊ ϩΪϯάͱͯ͠͏͜ͱਪ͠·ͤΜ
ࠓޙ • Alcatraz ରԠ༧ఆ • ΫϦςΟΧϧͳόά͕·͍ͩͬͯΔ ͷͰमਖ਼ྃޙϦϦʔε • ͳʹ͔ feedback
Β͑Δͱخ͍͠Ͱ͢
·ͱΊ Tuna Λ༻͢Δ͜ͱͰɺࠓ·ͰΈ͍ͨʹɹ ফ͢Δ͜ͱͳ͘ϓϦϯτσόοά͕ɹɹ Ͱ͖ΔΑ͏ʹͳΔΑʂʂ ϑΟʔυόοΫ͘ΕͨΒ͏Ε͍͠Ͱ͢
͜Ε͔Βফ͚ͭͮ͠·͔͢ʁ
ͦΕͱ Tuna Λ͍·͔͢ʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠