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
Discover breakpoint improvements まとめ
Search
jollyjoester
June 28, 2021
Technology
4
1.5k
Discover breakpoint improvements まとめ
YUMEMI.swift #12 feat. HAKATA.swift 〜WWDC Recap~
https://yumemi.connpass.com/event/216722/
jollyjoester
June 28, 2021
Tweet
Share
More Decks by jollyjoester
See All by jollyjoester
コミュニティMTG in WWDC24
jollyjoester
0
200
BengaluruでLTしてきた
jollyjoester
0
250
try! Swift Tokyo 2024
jollyjoester
0
210
エンジニアが直接会う場の価値について
jollyjoester
8
4k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
270
My favorite sessions in WWDC 23
jollyjoester
0
560
みんなでAIと戯れよう
jollyjoester
0
93
続く勉強会の作り方
jollyjoester
2
790
Code for INZAIの歩み
jollyjoester
0
340
Other Decks in Technology
See All in Technology
ネット広告に未来はあるか?「3rd Party Cookie廃止とPrivacy Sandboxの効果検証の裏側」 / third-party-cookie-privacy
cyberagentdevelopers
PRO
1
130
最速最小からはじめるデータプロダクト / Data Product MVP
amaotone
5
730
話題のGraphRAG、その可能性と課題を理解する
hide212131
4
1.4k
分布で見る効果検証入門 / ai-distributional-effect
cyberagentdevelopers
PRO
4
690
【技術書典17】OpenFOAM(自宅で極める流体解析)2次元円柱まわりの流れ
kamakiri1225
0
210
Fargateを使った研修の話
takesection
0
110
Autify Company Deck
autifyhq
1
39k
現地でMeet Upをやる場合の注意点〜反省点を添えて〜
shotashiratori
0
510
新R25、乃木坂46 Mobileなどのファンビジネスを支えるマルチテナンシーなプラットフォームの全体像 / cam-multi-cloud
cyberagentdevelopers
PRO
1
130
生成AIの強みと弱みを理解して、生成AIがもたらすパワーをプロダクトの価値へ繋げるために実践したこと / advance-ai-generating
cyberagentdevelopers
PRO
1
180
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
730
初心者に Vue.js を 教えるには
tsukuha
5
390
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Gamification - CAS2011
davidbonilla
80
5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
Testing 201, or: Great Expectations
jmmastey
38
7k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Designing the Hi-DPI Web
ddemaree
280
34k
GitHub's CSS Performance
jonrohan
1030
460k
Scaling GitHub
holman
458
140k
Unsuck your backbone
ammeep
668
57k
Transcript
Discover breakpoint improvements まとめ 2021/06/28 YUMEMI.swift #12 feat. HAKATA.swift 〜WWDC
Recap~ jollyjoester
• このLTはWWDC21のDiscover breakpoint improvementsのセッション動画を見 てざっくりまとめたものです。 • 実際に動画を見た方がXcodeの操作などイメージつきやすいので、興味が湧いた らぜひセッション動画も見てみてください! このLTについて
3つのbreakpoints Breakpointsとは • 主にdebugのためにプログラムの実行を止めて状況を確認するためのもの このセッションで紹介されている3つのbreakpoint • Source file breakpoints •
Symbolic breakpoints • Runtime Issue breakpoints
Source file breakpoints • ファイルごとに設定するbreakpoint • もっともよく使うのがLine breakpoint • つまりこれ→
Source file breakpoints
• convertedToVolumeにStep inしたいのだけど先にadjustedDensityに入ってしまう 😭 👉それ Xcode 13からはColumn breakpointで解決できるよ! Line breakpointの辛いところ
refs. 動画1:41あたり https://developer.apple.com/videos/play/wwdc2021/10209/
Column breakpoints refs. 動画2:26〜 https://developer.apple.com/videos/play/wwdc2021/10209/ • Command + クリックで設定できる •
enable/disableも当然できる • ダブルクリックでbreakpoint editor開ける • Control + クリックで↑の操作できるよ 便利〜🎉
• SwiftのClosure / Objective-CのBlockのdebugでもLine breakpointはめんどいけ ど • Column breakpointなら便利🎉 Column
breakpoints refs. 動画4:28〜 https://developer.apple.com/videos/play/wwdc2021/10209/
Symbolic breakpoints Symbolic breakpoints • 関数名でbreakpointを設定する方法 どんなときに使う? • ソースファイルにアクセスできないとき •
共通の関数を実装するサブクラスがめっちゃたく さんあって全部にbreakpoint貼りたいとき
Moduleを指定するといいよ • ロードされるライブラリとか全部が対象になるから汎用的な単語だったりする場合 はModuleを指定するといいよ。 Symbolic breakpointsのTips refs. 動画7:10〜 https://developer.apple.com/videos/play/wwdc2021/10209/
Xcode 13からどこにも解決されていないbreakpointを破線のアイコンで表示するように なったよ Unresolved breakpoints refs. 動画8:16〜 https://developer.apple.com/videos/play/wwdc2021/10209/
Unresolved breakpointsの原因はtypoが多い。 • Find Navigatorから探す • LLDBで探す Unresolved breakpointsのTips refs.
動画9:20〜 https://developer.apple.com/videos/play/wwdc2021/10209/ image lookup: Moduleを探す -r: 正規表現 -n: 名前 convert: 探す対象の文字列 Fruta: Module指定
ケース:BackgroundのスレッドでUIの状態を変えたりする 👉クラッシュほど深刻じゃないのでデフォルトでは一時停止はせ ず、バックトレースをIssue Navigatorに表示するよ これを一時停止したい場合はスキーム Editorのdiagnosisタブで対 応する機能を有効にする必要がある 👉先の例だとMain thread checkerを有効にする必要がある。これ
は→ボタンで移動できるよ Runtime Issue breakpoints refs. 動画11:03〜 https://developer.apple.com/videos/play/wwdc2021/10209/
まとめ • breakpointのちょっとした改善とTipsについての動画でした。 • breakpointsちゃんとのは大事なことなので便利になってありがたいですね • 操作のイメージなど動画を見るとさらにイメージが付きやすいと思うのでぜひ見て みてください おまけ •
Xcode, Xcode Cloudなど開発者に優しい発表が多いWWDCでしたね! • Xcode CloudについてはSwift愛好会で発表したので見てみてください ◦ https://www.youtube.com/watch?v=OVXr4Rb7zsU&t=3160s
Refs. WWDC21セッション動画 • Discover breakpoint improvements