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
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
印西市創業実践プログラム2026 【AI活用講座】
jollyjoester
0
47
AI時代でも変わらない技術コミュニティの力 ~10年続く"ゆるい"つながりが生み出す価値~
jollyjoester
0
34
AIコードアシスタントとiOS開発
jollyjoester
1
380
市民のためのセキュリティ講座
jollyjoester
0
110
コミュニティMTG in WWDC24
jollyjoester
0
390
BengaluruでLTしてきた
jollyjoester
0
410
try! Swift Tokyo 2024
jollyjoester
0
410
エンジニアが直接会う場の価値について
jollyjoester
8
4.7k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
440
Other Decks in Technology
See All in Technology
まちスペース®とデジタルツインと「まちづくり」
hiro_ogi
0
130
Agent 時代の Kaggle 展望 / kaggle-in-the-agentic-era
upura
1
840
モダンフロントエンド 開発研修
recruitengineers
PRO
4
800
Bits AI を制するものは Datadog を制す / The player that controls Bits AI, controls Datadog
kaminashi
0
130
SO-101×VLAによる3色キューブのピック&プレース
abeja
0
220
AI-DLC実践録_フルサイクル開発への挑戦
miyuc
0
280
Go 1.27 の標準パッケージに uuid が入った!のでいろいろ喋る / go_127_std_go_uuid
convto
2
490
今こそ聞きたいソフトウェア設計 ドメイン駆動設計再入門
masuda220
PRO
17
7.6k
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
560
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
640
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
870
Featured
See All Featured
A better future with KSS
kneath
240
18k
Amusing Abliteration
ianozsvald
1
250
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
Being A Developer After 40
akosma
91
590k
Mind Mapping
helmedeiros
PRO
1
320
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
220
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
700
What's in a price? How to price your products and services
michaelherold
247
13k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
470
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
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