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
iOS デバッグ&プロファイル
Search
[email protected]
August 24, 2018
Programming
2
600
iOS デバッグ&プロファイル
[email protected]
August 24, 2018
Tweet
Share
More Decks by
[email protected]
See All by
[email protected]
複雑さに立ち向かうための ソフトウェア開発入門
shiz
3
1.2k
座談会 「Strict ConcurrencyとSwift 6が開く新時代: 私たちはどう生きるか?」
shiz
5
12k
(非公開スライド追加)座談会 「Strict ConcurrencyとSwift 6が開く新時代: 私たちはどう生きるか?」
shiz
1
310
複雑さに立ち向かうためのコードリーディング入門
shiz
35
13k
Swift Observation
shiz
5
760
Swift Reflection
shiz
1
170
Swift Concurrency Next Step
shiz
7
7.6k
そろそろSwift Concurrency
shiz
1
450
Hello, Swift Concurrency world.の振り返り / Looking back on Hello, Swift Concurrency world.
shiz
0
120
Other Decks in Programming
See All in Programming
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
170
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.3k
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
160
Pinia Colada が実現するスマートな非同期処理
naokihaba
4
220
色々なIaCツールを実際に触って比較してみる
iriikeita
0
330
イベント駆動で成長して委員会
happymana
1
320
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
130
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.7k
Contemporary Test Cases
maaretp
0
130
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
330
Featured
See All Featured
Fireside Chat
paigeccino
34
3k
Automating Front-end Workflow
addyosmani
1366
200k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
A Philosophy of Restraint
colly
203
16k
We Have a Design System, Now What?
morganepeng
50
7.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Into the Great Unknown - MozCon
thekraken
32
1.5k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Why Our Code Smells
bkeepers
PRO
334
57k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Agile that works and the tools we love
rasmusluckow
327
21k
Transcript
J04 σόοάϓϩϑΝΠϧ 3PQQPOHJTXJGU
ࣗݾհ wTIJ[ ͣ͠ !TU[O wडୗ։ൃձࣾۈ wϞόΠϧ͔ΒΠϯϑϥ·ͰΔ ͪΌΜΆΜΤϯδχΞ 4XJGU "OESPJE LPUMJO
"OHVMBS /PEFKT $ 1)1 +BWB wJ04ΤϯδχΞࢦ͍ͯ͠·͢
J04%$5SBDL"
ͳͷͰຊʜ
શવҧ͏Λ͠·͢
88%$ Practical Approaches to Great App Performance Advanced Debugging with
Xcode and LLDB iOS Memory Deep Dive What’s New in Energy Debugging Measuring Performance Using Logging Creating Custom Instruments
ςετΑ͘Λ ཋͼΔ͚Ͳ σόοάϓϩϑΝΠϧʁ
ςετ ༧ྍ๏ σόοά ϓϩϑΝΠϦϯά ରྍ๏
WWDCͷσόοάܳͳͲ ৭ʑݕ౼ͯ͠ΈΔ
ݪҼ͕Θ͔Βͳ͍Τϥʔ Λಛఆ͢Δ
None
&YDFQUJPO#SFBLQPJOU
None
࠶ݱʹख͕͔͔ؒΔ σόοάΛ͢Δ
༷ ̑ճࣦഊͨ͠߹ϝοηʔδΛग़ͯ͠ऴྃ͢Δ ϝοηʔδ͕ग़ͳ͍ Γ͍ͨ͜ͱ ̑ճࣦഊͨ͠ޙʹऴྃ࣌ͷॲཧͷதΛௐΔ
͕͋Δ
USVFͰࢭ·Δ ̑ճ࣮ߦ͢ΔͱUSVFʹͳΔ #SFBLQPJOUͰࢭ·ΔΑ͏ʹ͢Δ
FYQSGPSJJO \TFMGDBMDVMBUF"GUFS"OTXFS BOTXFS ^ ࣮ߦΛࢭΊͣʹճ܁Γฦࣦ͠ഊͤ͞Δ
͜ΕΛಉ࣌ʹઃఆ͢Δͱ
CSFBLQPJOUͰ ࢭ·Βͳ͘ͳΔ
USVFͰࢭ·ͬͯ͘Εͳ͍ ̑ճ࣮ߦ͢ΔͱUSVFʹͳΔ #SFBLQPJOUͰࢭ·ΔΑ͏ʹ͢Δ
None
ઃఆΛม͑ͯΈΔ
FYQSJGBMTFGPSJJO \TFMGDBMDVMBUF"GUFS"OTXFS BOTXFS ^ ࣮ߦΛࢭΊͣʹճ܁Γฦࣦ͠ഊͤ͞Δ JΛઃఆ͢Δͱ CSFBLQPJOUεΩοϓͷઃఆΛແࢹ͢Δ
͜ΕΛಉ࣌ʹઃఆ͢Δͱ
$POEJUJPO͕ແࢹ͞ΕΔ
GBMTFͳͷʹࢭ·Δ ࣮ߦճ·ͩ̎ճ
None
׳Εͱ͕ඞཁ
͏Ұͭٙ
ϝιουͷҾ ͷมߋ͕Ͱ͖ͳ͍ʁ
มΘΒͳ͍ DBMDVMBUF"GUFS"OTXFS JT3JHIU#PPM DVSSFOU1PJOUDVSSFOU1PJOU USVFʹͳ͍ͬͯΔ
มߋ͢Δͱ
& ͕ߋ৽͞Ε͍ͯΔ
׳Εͱ͕ඞཁ
ͷมߋΛ͍͔͚Δ
͕ߋ৽͞Εͳ͍
XBUDIQPJOU
None
͕มߋ͞ΕΔλΠϛϯάͰࢭ·Δ
6*ΛͦͷͰௐ͢Δ
ϓϩύςΟʹΞΫηε Ͱ͖Δ߹
None
QPRVFTUJPODFOUFSZ QP$"5SBOTBDUJPOqVTI
QPRVFTUJPODFOUFSZ QP$"5SBOTBDUJPOqVTI
ϓϩύςΟʹΞΫηε Ͱ͖ͳ͍߹ʁ
FYQSFTTJPOMPCKD 0 < 6*7JFX YGFCCEEBF SFDVSTJWF%FTDSJQUJPO> 7JFXͷ֊ߏ͕औಘͰ͖Δ
QPVOTBGF#JU$BTU YGFCCEG UP 6*-BCFMTFMG DFOUFSZ VOTBGF#JU$BTU ܕ͕ฦͬͯ͘ΔͷͰͦͷ··͑Δ
DPNNBOEBMJBT DPNNBOEBMJBTQPDFYQSFTTJPOMPCKD 0 QPD< 6*7JFX YGFCCEEBF SFDVSTJWF%FTDSJQUJPO> QPDίϚϯυΛ࡞͢Δ
DPNNBOETDSJQUJNQPSU DPNNBOETDSJQUJNQPSUdOVEHFQZ OVEHFYGFCCEG GBDFCPPLDIJTFM IUUQTHJUIVCDPNGBDFCPPLDIJTFM QZUIPOεΫϦϓτΛΠϯϙʔτ͢Δ
dMMECJOJU ىಈ࣌ʹίϚϯυΛಡΈࠐΉ dMMECJOJU9DPEF
ศརͳCSFBLQPJOU TZNCPM6*7JFX"MFSU'PS6OTBUJTpBCMF$POTUSBJOUT "VUP-BZPVUͷΛݕ TZNCPM/4,70%FBMMPDBUF#SFBL ·ͩొ͞Ε͍ͯΔ,70ϓϩύςΟ͕EFBMMPD͞Εͨ͜ͱΛݕ TZNCPM@9$5'BJMVSF)BOEMFS 9$5FTUͰΤϥʔ͕ग़ͨՕॴΛݕ TZNCPM@/4%BUB3FJOJUJBMJ[BUJPO#SFBL ॳظԽࡁΈͷ/4%BUB͕࠶ͼॳظԽ͞Εͨ͜ͱΛݕ
ىಈ͕͍ཧ༝ΛௐΔ
ͭͷεςʔδ 1SFNBJO 1PTUNBJO 6*"QQMJDBUJPO.BJOͷNBJO ͕ݺΕΔલ γεςϜ͕ίϯτϩʔϧ͢Δ 6*"QQMJDBUJPO.BJOͷNBJO ͕ݺΕͨ͋ͱ BQQMJDBUJPOXJMM'JOJTI-BVODIJOH8JUI0QUJPOT ͔Β࠷ॳͷ7JFX$POUSPMMFSͷWJFX8JMM"QQFBS·Ͱ
Ϣʔβʔ͕ૢ࡞ՄೳʹͳΔ·Ͱ
1SFNBJO
%:-%@13*/5@45"5*45*$4
EZMJCMPBEJOH SFCBTFCJOEJOH 0CKDTFUVQ *OJUJBMJ[FS
w %ZOBNJD'SBNFXPSLͷଟ༻Λආ͚Δ "QQMFਪͭ·Ͱ w 0CKFDUJWF$ͷDMBTTͷΛݮΒ͢ w 0CKFDUJWF$ͷTUBUJDJOJUJBMJ[FSΛݮΒ͢ ˠ4XJGUͷTUSVDUΛ͏ w
NTΛඪʹ͢Δ J1IPOFͰϗʔϜ͔ ΒΞϓϦ͕ىಈ͞ΕΔ·Ͱͷ࣌ؒ w ඵΛ͑ΔͱΞϓϦ͕Ωϧ͞ΕΔ ҙ͢Δ͖ϙΠϯτ
%ZOBNJD'SBNFXPSLTͷ݁߹ "GSBNFXPSL #GSBNFXPSL $GSBNFXPSL %GSBNFXPSL &GSBNFXPSL 'GSBNFXPSL (GSBNFXPSL )GSBNFXPSL "#$%&GSBNFXPSL
'()GSBNFXPSL
4UBUJD'SBNFXPSLTͷม "#*4PVSDF4UBCJMJUZ
0CKFDUJWF$ͱͷ ϋΠϒϦουͷ߹
1PTUNBJO
4FDPOE3VO-PPQ .BJO2VFVFͰEJTQBUDIBTZODΛͯ͠Βͤͯྑ ͍ͷɻ͜ΕͰ͖ΔݶΓ࡞ۀྔΛ͑Δɻ ̏ͭͷྨ 'JSTU3VO-PPQ ඞͣ࠷ॳʹ͠ͳ͚Ε͍͚ͳ͍ͷΛઃఆ͢Δɻ Ͱ͖ΔݶΓ࡞ۀྔݮΒ͠ɺશମͷˋҎԼʹ͑Δ *OUIFCBDLHSPVOE ผ5ISFBEͰ#BDLHSPVOE࣮ߦͰ͖ΔͷɻΞφϦςΟ ΫεͷॳظԽͳͲඞਢͰͳ͍ͷɻ
ཁ ඞཁ࠷ݶͷ͜ͱΛʂ
ศརͳ-BVODI"SHVNFOUT /4%PVCMF-PDBMJ[FE4USJOHT:&4 จࣈΛ̎ճ܁Γฦͯ͠ग़ྗ͢Δ DPNBQQMF$PSF%BUB42-%FCVH 42-ग़ྗ /44IPX/PO-PDBMJ[FE4USJOHT:&4 -PDBMJ[BUJPO͠Ε͍ͯΔՕॴΛಛఆ "QQMF-BOHVBHFT FT
ݴޠઃఆͷมߋ
৭ʑݕ౼ͯ͠ Θ͔ͬͨ͜ͱ
ใ͕গͳ͍
None
ྑ͍ใݯษڧձͳͲ ͋Γ·ͨ͠Βڭ͍͑ͯͩ͘͞'
ˌใٻϜ