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
Enjoy Breakpoint
Search
Shingo Tamaki
February 11, 2017
Technology
8
1.6k
Enjoy Breakpoint
Swiftのビルドが遅いのでBreakpointを活用して、
アプリを止めずにできるだけデバッグ作業しようという話です。
Shingo Tamaki
February 11, 2017
Tweet
Share
More Decks by Shingo Tamaki
See All by Shingo Tamaki
沖縄モバイルアプリ開発勉強会#1
tamaki
0
82
iOSアプリ開発を始めよう
tamaki
0
120
詳解xcresult.pdf
tamaki
0
290
メルペイでのリグレッションテスト自動化推進のこれまでとこれから
tamaki
0
680
What do you want to test with UI Test v2
tamaki
2
840
JPQRによって変わる日本のQRコード決済
tamaki
0
240
What's New in Testing
tamaki
1
58
What do you want to test with UI Test
tamaki
5
1.8k
How to control state in UI Test
tamaki
4
2.5k
Other Decks in Technology
See All in Technology
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
990
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
Taming you application's environments
salaboy
0
190
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
600
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
Can We Measure Developer Productivity?
ewolff
1
150
Lambdaと地方とコミュニティ
miu_crescent
2
370
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
190
Featured
See All Featured
Designing for Performance
lara
604
68k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Embracing the Ebb and Flow
colly
84
4.5k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
The Invisible Side of Design
smashingmag
298
50k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Transcript
ENJOY BREAKPOINT
ࣗݾհ
ࣗݾհ ۄ৴ޛ iOS Engineer! झຯ" ిࢠ࡞⚡ ےτϨ$ ΨδΣοτ%
! SWIFTͷϏϧυ ͍Ͱ͢ΑͶ "
Α͘( ฉ | ޮ )͘SWIFTͷϏϧυߴԽTIPS ࣄલ४උ > xcprofilerͳͲͰܭଌ https://github.com/giginet/xcprofiler
Α͘( ฉ | ޮ )͘SWIFTͷϏϧυߴԽTIPS ઃఆϨϕϧ > Optimization Level >
ϏϧυฒྻԽ > SWIFTWHOLEMODULE_OPTIMIZATION
Α͘( ฉ | ޮ )͘SWIFTͷϏϧυߴԽTIPS ίʔυϨϕϧ > ܕਪͤ͞ͳ͍! > +ΑΓappend
> ??(nil݁߹ԋࢉࢠ)Λ༻͠ͳ͍
Α͘( ฉ | ޮ )͘SWIFTͷϏϧυߴԽTIPS http://qiita.com/you_matz/items/e95f30023eccc8d96357 http://sssslide.com/speakerdeck.com/naoto0n2/ buildshi-jian-gai-shan
ରԠ͢ΔͭΓɺ Ͱ༏ઌλεΫ͕ɻ
ͦΜͳ࣌ظͷ ։ൃʹཱͭ BREAKPOINTͷTIPS
جຊత ͳ͍ํ
جຊతͳ͍ํ > ࢭΊ͍ͨॲཧͷߦͷࠨଆΛΫϦοΫͯ͠ϒ ϨΠΫϙΠϯτΛՃ
লུ
EDIT BREAKPOINT
EDIT BREAKPOINT Condition ࣮ߦ݅ ex) foo == bar Ignore ϒϨΠΫͷແࢹճ
ex) ϧʔϓॲཧͰ5ճͷ͚࣌ͩࢭΊ͍ͨ Action ޙड़ Options Action࣮ߦޙʹϒϨΠΫͤ͞ͳ͍ ex) ActionͰϩάग़ྗͳͲΛͤ͞ଓ͚͍ͨ࣌ͳͲ
ACTION Apple Script Apple Scriptͷ࣮ߦ͕Մೳ ex) ௨ηϯλʔʹNotificationΛඈ͢ Capture GPU Frame
OpenGL ESͷඳըঢ়گͷ֬ೝͳͲʹ͏ Debugger Command LLDBίϚϯυͷ࣮ߦ͕Մೳ Log Message γϯϓϧͳςΩετͷϩάग़ྗ͕Մೳ Shell Command γΣϧʹΑΔίϚϯυͷ࣮ߦ͕Մೳ Sound αϯυͷ࠶ੜ͕ઃఆՄೳ
ACTION ΞΫγϣϯෳՃՄೳ
LOG MESSAGE ୯७ͳϩάग़ྗΛߦ͍͍ͨ࣌ ͳͲʹศར ίϯιʔϧͷग़ྗ ಡΈ্͛ԻͰग़ྗͰ͖Δ ίʔυ্ͷมΛ@hoge@ͷΑ͏ͳ ܗͰࢦఆͰ͖ͨΓɺ%BͰϒϨΠΫϙΠϯτ໊ɺ %HͰϒϨΠΫϙΠϯτͷ࣮ߦճ͕දࣔ͞Ε·͢ɻ Title:
"Books" viewDidLoad() 1
DEBUG COMMAND po foo po bar = foo env DEBUG=1
bt ..etc https://lldb.llvm.org/lldb-gdb.html
DEBUG COMMAND CHISEL facebookͷLLDBίϚϯυू https://github.com/facebook/chisel pvc : ViewController֊Λίϯιʔϧʹग़ྗ pviews :
View֊Λίϯιʔϧʹग़ྗ border/unborder : ରͷViewʹϘʔμʔΛඳը ...etc
APPLE SCRIPT osascript -e 'display notification "Hello World"'
APPLE SCRIPT MAC AUTOMATION SCRIPTING GUIDE https://developer.apple.com/library/ content/documentation/ LanguagesUtilities/Conceptual/ MacAutomationScriptingGuide/
index.html#//apple_ref/doc/uid/ TP40016239-CH56-SW1
BREAKPOINTͷڞ༗ Share BreakpointͰνʔϜͰڞ༗ Մೳ ׂͱαΫοͱফ͞ΕΔࣄ͋ ΔͷͰॏ༻͢Δ͜ͱগͳ͍ ͔ͳͱࢥ͍·͢...
BREAKPOINTͷڞ༗ READINGMARKER.XCWORKSPACE/XCSHAREDDATA/XCDEBUGGER/ BREAKPOINTS_V2.XCBKPTLIST <?xml version="1.0" encoding="UTF-8"?> <Bucket type = "3"
version = "2.0"> <Breakpoints> <BreakpointProxy BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint"> <BreakpointContent shouldBeEnabled = "Yes" ignoreCount = "0" continueAfterRunningActions = "Yes" filePath = "ReadingMarker/ViewControllers/HomeViewController.swift" timestampString = "508462948.98439" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" startingLineNumber = "21" endingLineNumber = "21" landmarkName = "viewDidLoad()" landmarkType = "7"> <Actions> <BreakpointActionProxy ActionExtensionID = "Xcode.BreakpointAction.Log"> <ActionContent message = "Log Message" conveyanceType = "0"> </ActionContent> </BreakpointActionProxy> </Actions> </BreakpointContent> </BreakpointProxy> </Breakpoints> </Bucket>
BREKPOINTΛ׆༻͢Δͱྑ͍ ࠶ϏϧυͷճΛݮΒͤΔ⤵ ɾσόοάͷͨΊͷίʔυΛॻ͍ͯ࠶Ϗϧυ͠ͳͯ͘ྑ͍ ɾ࣮ߦதͰϩάͷࠩ͠ࠐΈՄೳ
ΑΓָʹͳΔϓϥάΠϯ Tuna https://speakerdeck.com/dealforest/mada-nslog- dexiao-hao-siteirufalse
ࢀߟจݙ ΄΅શ෦ࡌͬͯ·͢!
એ
2/21 FASTLANEษڧձ https://fastlane.connpass.com/event/49623/
3/13 IOS TEST NIGHT https://testnight.connpass.com/event/49561/
YAHOO HACK DAYग़͠·ͨ͠ɻ ʮͻͱ͖ʯ 3:30:11~3:31:49 https://www.youtube.com/watch?v=oJKTYEJkasU ※ ikesyo/Himotokiಋೖ͍ͯ͠·ͤΜ!
Ҏ্