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
1.8k
8
Share
Enjoy Breakpoint
Swiftのビルドが遅いのでBreakpointを活用して、
アプリを止めずにできるだけデバッグ作業しようという話です。
Shingo Tamaki
February 11, 2017
More Decks by Shingo Tamaki
See All by Shingo Tamaki
Use Gemini CLI from Claude Code as part of Sub Agent
tamaki
0
300
Let's make an Immersive Video with APMP
tamaki
0
59
Firebase Studioで始めるモバイルアプリ開発入門
tamaki
0
50
Introduction to Claude Code Action
tamaki
0
790
AIエージェントを使ったiOSアプリ開発を試してみた
tamaki
0
190
沖縄モバイルアプリ開発勉強会#1
tamaki
0
150
iOSアプリ開発を始めよう
tamaki
0
250
詳解xcresult.pdf
tamaki
0
440
メルペイでのリグレッションテスト自動化推進のこれまでとこれから
tamaki
0
830
Other Decks in Technology
See All in Technology
色を視る
yuzneri
0
300
社内エンジニア勉強会の醍醐味と苦しみ/tamadev
nishiuma
0
270
大学職員のための生成AI最前線 :最前線を、AIガバナンスとして読み直すためのTips
gmoriki
0
1.6k
20260428_Product Management Summit_Loglass_JoeHirose
loglassjoe
4
6.1k
サービスの信頼性を高めるため、形骸化した「プロダクションミーティング」を立て直すまでの取り組み
stefafafan
0
120
Agents CLI と Gemini Enterprise Agent Platform で マルチエージェント開発が楽しくなる!
kaz1437
0
200
コミュニティ・勉強会を作るのは目的じゃない
ohmori_yusuke
0
280
AI時代 に増える データ活用先
takahal
0
350
AgentCore Managed Harness を使ってみよう
yakumo
2
280
Practical TypeProf: Lessons from Analyzing Optcarrot
mame
1
1.6k
アクセシビリティはすべての人のもの
tomokusaba
0
200
AgentCore×VPCでの設計パターンn選と勘所
har1101
4
360
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Odyssey Design
rkendrick25
PRO
2
590
Everyday Curiosity
cassininazir
0
200
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
Become a Pro
speakerdeck
PRO
31
5.9k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
110
Typedesign – Prime Four
hannesfritz
42
3k
We Have a Design System, Now What?
morganepeng
55
8.1k
HDC tutorial
michielstock
2
640
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
410
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
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ಋೖ͍ͯ͠·ͤΜ!
Ҏ্