Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Discover breakpoint improvements まとめ
Search
jollyjoester
June 28, 2021
Technology
2.1k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Discover breakpoint improvements まとめ
YUMEMI.swift #12 feat. HAKATA.swift 〜WWDC Recap~
https://yumemi.connpass.com/event/216722/
jollyjoester
June 28, 2021
More Decks by jollyjoester
See All by jollyjoester
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
150
印西市創業実践プログラム2026 【AI活用講座】
jollyjoester
0
96
AI時代でも変わらない技術コミュニティの力 ~10年続く"ゆるい"つながりが生み出す価値~
jollyjoester
0
44
AIコードアシスタントとiOS開発
jollyjoester
1
400
市民のためのセキュリティ講座
jollyjoester
0
130
コミュニティMTG in WWDC24
jollyjoester
0
410
BengaluruでLTしてきた
jollyjoester
0
420
try! Swift Tokyo 2024
jollyjoester
0
450
エンジニアが直接会う場の価値について
jollyjoester
8
4.8k
Other Decks in Technology
See All in Technology
Cloudflareの向き先
chimame
1
160
[General] 개발자로 해외 기업에서 일하기
skydoves
1
310
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
1
220
「いつか使う」の「いつか」は来ない 〜AI駆動開発における「作らない」判断について〜
ikki0006
0
180
属人化したISMS運用をGitHubとAIで仕組み化した1年間の記録
sioncojp
4
1.9k
令和の今、あらためて IAM を考える。アクセスキーを「無くせない現実」との向き合い方
kazzpapa3
0
560
プロダクションコードにおける encoding/json から encoding/json/v2 へのスムーズな移行
sansantech
PRO
1
230
なぜ東京にいる私が、新潟の技術コミュニティを運営するのか by 八雲慎之助
yakumo
0
230
bpf_arenaとstruct_opsを使うのが難しかった話
masu_mi
0
220
レガシーコードに対する loop engineering的なAI開発プロセス導入について
kubell_hr
0
310
慶應義塾大学 AI実践05 論文執筆の仕組み化
keio_smilab
PRO
7
3.8k
2026 Apache Flink Community Checkpoint
rmetzger
0
210
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
699
190k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
330
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.6k
Visualization
eitanlees
153
17k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Design in an AI World
tapps
1
390
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
300
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Designing for humans not robots
tammielis
254
26k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2.1k
Automating Front-end Workflow
addyosmani
1370
210k
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