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
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
5.8k
魅せるデバッグ技術
dealforest
4
1.4k
LLDB の世界からみた Swift
dealforest
4
4.8k
Xcode で快適なデバッグライフを追い求める
dealforest
29
22k
Intrducing debug in WWDC2016
dealforest
3
750
swift build と Xcode での Build の違い
dealforest
3
2k
RIP Xcode Plugin 🙏
dealforest
0
4.7k
Introducing Xcode Editor Extension
dealforest
2
4.5k
Introducing Anglerfish
dealforest
2
3.2k
Other Decks in Technology
See All in Technology
Creative UIs with Compose: DroidKaigi 2024
chrishorner
1
580
QAに対する超個人的な解釈 / Personal Take on QA
toma_sm
1
100
Road to Single Activity
yurihondo
2
240
『GRANBLUE FANTASY Relink』ソフトウェアラスタライザによる実践的なオクルージョンカリング
cygames
0
170
Mocking in Rust Applications
taiki45
2
410
忙しい人のためのLangGraph概要まとめ
__ymgc__
1
190
20240912 JJUGナイトセミナー
mii1004
0
140
不動産tech Product Night#2_AIことはじめ_GA橋本
takehikohashimoto
0
190
JEP 480: Structured Concurrency
aya_ebata
0
130
Technical Writing Meetup vol.35
soracom
PRO
2
120
Next.js のページ遷移を全力で止める
ypresto
7
3.3k
言葉は感情の近似値である。その感情と言葉の誤差を最小化しよう ~コミュニケーションにおけるアナログ/デジタル変換の課題に立ち向かう~
nktamago
0
230
Featured
See All Featured
In The Pink: A Labor of Love
frogandcode
139
22k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
Visualization
eitanlees
142
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
123
18k
[RailsConf 2023] Rails as a piece of cake
palkan
48
4.6k
Designing the Hi-DPI Web
ddemaree
278
34k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
38
9.2k
Happy Clients
brianwarren
96
6.6k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Adopting Sorbet at Scale
ufuk
73
8.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
190
16k
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 Λ͍·͔͢ʁ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠