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
まだ NSLog で消耗しているの?
Search
Toshihiro Morimoto
March 07, 2015
Technology
12k
0
Share
まだ NSLog で消耗しているの?
yidev 第18回での発表資料です
Toshihiro Morimoto
March 07, 2015
More Decks by Toshihiro Morimoto
See All by Toshihiro Morimoto
Xcode8 で開発はどうかわったのか
dealforest
10
6.4k
魅せるデバッグ技術
dealforest
4
1.6k
LLDB の世界からみた Swift
dealforest
4
5.4k
Xcode で快適なデバッグライフを追い求める
dealforest
29
24k
Intrducing debug in WWDC2016
dealforest
3
810
swift build と Xcode での Build の違い
dealforest
3
2.1k
RIP Xcode Plugin 🙏
dealforest
0
4.8k
Introducing Xcode Editor Extension
dealforest
2
4.7k
Introducing Anglerfish
dealforest
2
3.5k
Other Decks in Technology
See All in Technology
freeeで運用しているAIQAについて
qatonchan
1
590
AI対話分析の夢と、汚いデータの現実 Looker / Dataplex / Dataform で実現する品質ファーストな基盤設計
waiwai2111
0
520
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
200
10サービス以上のメール到達率改善を地道に継続的に進めている話 / Continue to improve email delivery rates across multiple services
yamaguchitk333
6
1.8k
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.5k
写真で見るAWS Summit Singapore 2026
k_adachi_01
0
110
マンション備え付けのネットワークとLTE回線を組み合わせた ネットワークの安定化の考案
harutiro
1
130
20260513_生成AIを専属DSに_AI分析結果の検品テクニック_ハンズオン_交通事故データ
doradora09
PRO
0
220
大学職員のための生成AI最前線 :最前線を、AIガバナンスとして読み直すためのTips
gmoriki
2
4.1k
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
160
クラウドネイティブ DB はいかにして制約を 克服したか? 〜進化歴史から紐解く、スケーラブルアーキテクチャ設計指針〜
hacomono
PRO
6
960
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Navigating Weather and Climate Data
rabernat
0
190
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
350
Why Our Code Smells
bkeepers
PRO
340
58k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
160
BBQ
matthewcrist
89
10k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
120
The Pragmatic Product Professional
lauravandoore
37
7.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
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 Λ͍·͔͢ʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠