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
WWDC26参加レポート ~In Person Labはいいぞ~
Search
kntk
June 19, 2026
Programming
83
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WWDC26参加レポート ~In Person Labはいいぞ~
Recap of WWDC26 Mercari
kntk
June 19, 2026
More Decks by kntk
See All by kntk
Swiftのレキシカルスコープ管理
kntkymt
0
240
"奇妙"なSwift
kntkymt
3
370
SwiftのSIMDとその利用方法
kntkymt
2
340
Swiftのオーバーロード選択のスコア規則21種類
kntkymt
0
220
Meet high-performance image filtering in Swift
kntkymt
0
190
プログラミングを始めてからiOSエンジニアになるまで
kntkymt
0
1.8k
SwiftUIでの非同期処理データの状態管理を考える
kntkymt
1
2.6k
大学で出席管理アプリ・掲示板閲覧アプリを開発・運用している学生の話
kntkymt
1
2.7k
Swiftを知って欲しい
kntkymt
1
160
Other Decks in Programming
See All in Programming
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
170
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
190
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
160
FDEが実現するAI駆動経営の現在地
gonta
2
280
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
140
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
500
Cloudflare is Agents
chimame
0
160
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
400
What's New in Android 2026
veronikapj
0
260
数百円から始めるRuby電子工作
tarosay
0
150
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
200
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
RailsConf 2023
tenderlove
30
1.5k
Designing Powerful Visuals for Engaging Learning
tmiket
1
490
How GitHub (no longer) Works
holman
316
150k
For a Future-Friendly Web
brad_frost
183
10k
Typedesign – Prime Four
hannesfritz
42
3.1k
ラッコキーワード サービス紹介資料
rakko
1
4.3M
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
410
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.3k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
460
Transcript
88%$ࢀՃϨϙʔτ ʙ*O1FSTPO-BC͍͍ͧʙ !LOUL 88%$3FDBQ!ϝϧΧϦ
88%$ఔ %BZ 3FDFQUJPO %BZ ,FZOPUF 1MBUGPSN4UBUFPGUIF6OJPO *O1FSTPO-BC %BZ %FWFMPQFS4FTTJPO
88%$ఔ %BZ 3FDFQUJPO %BZ ,FZOPUF 1MBUGPSN4UBUFPGUIF6OJPO *O1FSTPO-BC %BZ %FWFMPQFS4FTTJPO
*O1FSTPO-BC w"QQMFͷΤϯδχΞʹࣗ༝ʹ࣭Ͱ͖Δ࣌ؒ
*O1FSTPO-BC w"QQMFͷΤϯδχΞʹࣗ༝ʹ࣭Ͱ͖Δ࣌ؒ wݱͰ͔͠ମݧͰ͖ͳ͍ΠϕϯτͷҰͭ
*O1FSTPO-BC w"QQMFͷΤϯδχΞʹࣗ༝ʹ࣭Ͱ͖Δ࣌ؒ wݱͰ͔͠ମݧͰ͖ͳ͍ΠϕϯτͷҰͭ wࣄલʹ࣭จࢿྉΛ༻ҙ͢ΔͱମݧΛ࠷େԽͰ͖Δ
*O1FSTPO-BC w"QQ*OUFOUTͷ࣮ߦϓϩηεʹ͍ͭͯ wඇυΩϡϝϯτڍಈ
"QQ*OUFOUTͷ࣮ߦϓϩηε @AppIntent(schema: .system.search) struct ShowInAppSearchResultsIntent: AppIntent { var criteria: StringSearchCriteria
func perform() async throws -> some IntentResult { // ԿΒ͔ͷॲཧ return .result() } }
"QQ*OUFOUTͷ࣮ߦϓϩηε @AppIntent(schema: .system.search) struct ShowInAppSearchResultsIntent: AppIntent { var criteria: StringSearchCriteria
func perform() async throws -> some IntentResult { // ԿΒ͔ͷॲཧ return .result() } } QFSGPSNؔͲͷϓϩηεͰݺΕΔʁ
"QQ*OUFOUTͷ࣮ߦϓϩηεࣄલௐࠪ w୯ҰͷUBSHFUʹͷΈϦϯΫ͞Ε͍ͯΔ߹ wෳͷUBSHFUʹϦϯΫ͞Ε͍ͯΔ߹
"QQ*OUFOUTͷ࣮ߦϓϩηεࣄલௐࠪ w୯ҰͷUBSHFUʹͷΈϦϯΫ͞Ε͍ͯΔ߹ wͦͷUBSHFUͷϓϩηεͰ࣮ߦ͞ΕΔ wෳͷUBSHFUʹϦϯΫ͞Ε͍ͯΔ߹
"QQ*OUFOUTͷ࣮ߦϓϩηεࣄલௐࠪ w୯ҰͷUBSHFUʹͷΈϦϯΫ͞Ε͍ͯΔ߹ wͦͷUBSHFUͷϓϩηεͰ࣮ߦ͞ΕΔ wෳͷUBSHFUʹϦϯΫ͞Ε͍ͯΔ߹ w݅ʹԠͯ͡બ
"QQ*OUFOUTͷ࣮ߦϓϩηεࣄલௐࠪ w *OUFOU͕0QFO*OUFOU TVQQPSUFE.PEFGPSFHSPVOE ͷ߹ w ৗʹΞϓϦϓϩηε w *OUFOU͕UBSHFUͷॲཧ͔ΒτϦΨʔ͞Εͨ߹ɹ#VUUPO JOUFOU
ͳͲ w ͦͷUBSHFUͷϓϩηε w *OUFOU͕γεςϜ͔ΒτϦΨʔ͞Εͨ߹ w ΞϓϦϓϩηε͕ੜ͖͍ͯΕΞϓϦϓϩηε w ΞϓϦϓϩηε͕ࢮΜͰ͍ΕଞUBSHFUϓϩηε
"QQ*OUFOUTͷ࣮ߦϓϩηεࣄલௐࠪ IUUQTHJUIVCDPNLOULZNUJPTBQQJOUFOUTTBNQMFUSFFNBJONVMUJUBSHFUTTIBSFEJOUFOUQSPDFTT
"QQ*OUFOUTͷ࣮ߦϓϩηε࣭ w୯ҰͷUBSHFUʹͷΈϦϯΫ͞Ε͍ͯΔ߹ wͦͷUBSHFUͷϓϩηεͰ࣮ߦ͞ΕΔ wෳͷUBSHFUʹϦϯΫ͞Ε͍ͯΔ߹ w݅ʹԠͯ͡બ
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄 )J ͲΜͳ࣭Λ͖࣋ͬͯͨΜ͍ͩʁ
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄 "QQ*OUFOUTͷ࣮ߦϓϩηεϧʔϧ ʹ͍ͭͯฉ͖͍ͨ
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄 ͳΔ΄Ͳʂ ͦͷΤϦΞʹৄ͍͠ΤϯδχΞ
͕͍Δ͔ΒҊ͢ΔΑʂ
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄 ൴͕"QQ*OUFOUTͷ࣮ߦϓϩηε ʹ͍ͭͯฉ͖͍ͨΒ͍͠ʂ
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄 ͪΖΜʂ
*O1FSTPO-BC࣭ 😄 😄 😄 😄 😄 "QQ*OUFOUTΤϦΞ 😄 "QQ*OUFOUT͕୯ҰͷUBSHFUͷΈʹ ϦϯΫ͞Ε͍ͯΔ߹ʜ
"QQ*OUFOUTͷ࣮ߦϓϩηε࣭ w୯ҰͷUBSHFUʹͷΈϦϯΫ͞Ε͍ͯΔ߹ wͦͷUBSHFUͷϓϩηεͰ࣮ߦ͞ΕΔ wෳͷUBSHFUʹϦϯΫ͞Ε͍ͯΔ߹ w݅ʹԠͯ͡બ
"QQ*OUFOUTͷ࣮ߦϓϩηε࣭ w୯ҰͷUBSHFUʹͷΈϦϯΫ͞Ε͍ͯΔ߹ wͦͷUBSHFUͷϓϩηεͰ࣮ߦ͞ΕΔ:FT wෳͷUBSHFUʹϦϯΫ͞Ε͍ͯΔ߹ w݅ʹԠͯ͡બ:FT
"QQ*OUFOUTͷ࣮ߦϓϩηε࣭ w *OUFOU͕0QFO*OUFOU TVQQPSUFE.PEFGPSFHSPVOE ͷ߹ w ৗʹΞϓϦϓϩηε w *OUFOU͕UBSHFUͷॲཧ͔ΒτϦΨʔ͞Εͨ߹ɹ#VUUPO JOUFOU
ͳͲ w ͦͷUBSHFUͷϓϩηε w *OUFOU͕γεςϜ͔ΒτϦΨʔ͞Εͨ߹ w ΞϓϦϓϩηε͕ੜ͖͍ͯΕΞϓϦϓϩηε w ΞϓϦϓϩηε͕ࢮΜͰ͍ΕଞUBSHFUϓϩηε
"QQ*OUFOUTͷ࣮ߦϓϩηε࣭ w *OUFOU͕0QFO*OUFOU TVQQPSUFE.PEFGPSFHSPVOE ͷ߹ w ৗʹΞϓϦϓϩηε w *OUFOU͕UBSHFUͷॲཧ͔ΒτϦΨʔ͞Εͨ߹ɹ#VUUPO JOUFOU
ͳͲ w ͦͷUBSHFUͷϓϩηε w *OUFOU͕γεςϜ͔ΒτϦΨʔ͞Εͨ߹ w ΞϓϦϓϩηε͕ੜ͖͍ͯΕΞϓϦϓϩηε w ΞϓϦϓϩηε͕ࢮΜͰ͍ΕଞUBSHFUϓϩηε 😄͓͓ɺ߹ͬͯΔΑʂͦ͏ͦ͏ɺ͜͏͍͏ෳࡶͳϧʔϧ͕͋ΔΜͩΑͶ
"QQ*OUFOUTͷ࣮ߦϓϩηε࣭ 😄͋ͱɺ࣮J04͔ΒϓϩύςΟͰϓϩηεΛࢦఆͰ͖ΔΑ͏ʹͨ͠Αʂ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOBQQJOUFOUTBQQJOUFOUBMMPXFEFYFDVUJPOUBSHFUTLPM
*O1FSTPO-BC w"QQMFͷΤϯδχΞʹࣗ༝ʹ࣭Ͱ͖Δ࣌ؒ w࣌ؒఔ wͪ࣌ؒগͳ͍ͷͰ࣌ؒʹ༨༟͋Δ
*O1FSTPO-BC࣭༰ w"QQ*OUFOUTͷ࣮ߦϓϩηεʹ͍ͭͯ w"QQ4DIFNBͷޓੑ w'FFECBDL"TTJTUBOUͰใࠂͨ͠όάΛฉ͖ʹߦ͘
*O1FSTPO-BC࣭༰ w"QQ*OUFOUTͷ࣮ߦϓϩηεʹ͍ͭͯ w"QQ4DIFNBͷޓੑ w'FFECBDL"TTJTUBOUͰใࠂͨ͠όάΛฉ͖ʹߦ͘
w "TTJTUBOU4DIFNBͱ͍͏໊લͰ9DPEF4%,͔Βଘࡏ "QQ4DIFNBͷޓੑ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOBQQJOUFOUTBTTJTUBOUTDIFNBTTZTUFNJOUFOU
w "TTJTUBOU4DIFNBͱ͍͏໊લͰ9DPEF4%,͔Βଘࡏ w 9DPEF4%,͔Β"QQ4DIFNBϦωʔϜ "QQ4DIFNBͷޓੑ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOBQQJOUFOUTBQQTDIFNBTZTUFNJOUFOU
w "TTJTUBOU4DIFNBͱ͍͏໊લͰ9DPEF4%,͔Βଘࡏ w 9DPEF4%,͔Β"QQ4DIFNBϦωʔϜ w "QQ*OUFOUͰͷར༻ํ๏ಉ͡ʢιʔεޓʣ "QQ4DIFNBͷޓੑ
w "TTJTUBOU4DIFNBͱ͍͏໊લͰ9DPEF4%,͔Βଘࡏ w 9DPEF4%,͔Β"QQ4DIFNBϦωʔϜ w "QQ*OUFOUͰͷར༻ํ๏ಉ͡ʢιʔεޓʣ w J04 ʹόοΫϙʔτ͞Ε͍ͯΔ "QQ4DIFNBͷޓੑ
"QQ4DIFNBͷޓੑ @AppIntent(schema: .system.search) struct ShowInAppSearchResultsIntent: AppIntent { var criteria: StringSearchCriteria
func perform() async throws -> some IntentResult { // ԿΒ͔ͷॲཧ return .result() } }
"QQ4DIFNBͷޓੑ 😄 "QQ*OUFOUTΤϦΞ 9DPEF "TTJTUBOU4DIFNBͰϏϧυͨ͠ΞϓϦ J04ͷ4JSJ"*͔ΒೝࣝͰ͖Δʁ
"QQ4DIFNBͷޓੑ 😄 "QQ*OUFOUTΤϦΞ جຊతʹͰ͖ΔΑʂ
"QQ4DIFNBͷޓੑ 😄 "QQ*OUFOUTΤϦΞ جຊతʹͰ͖ΔΑʂ 9DPEFͰϏϧυ࣮͚ͤ֬ͩ͠Ͳ ͠ͳͯ͘େৎͳ4DIFNB͋ΔΑ
w 9DPEF "TTJTUBOU4DIFNBͰ4JSJ"*ରԠΞϓϦΛϦϦʔεͰ͖Δʂ "QQ4DIFNBͷޓੑ
"QQ4DIFNBͷཪଆ wϏϧυ࣌ʹ.FUBEBUBBQQJOUFOUTΛग़ྗ
"QQ4DIFNBͷཪଆ wϏϧυ࣌ʹ.FUBEBUBBQQJOUFOUTΛग़ྗ
"QQ4DIFNBͷཪଆ wFYUSBDUBDUJPOTEBUB KTPO { "actions": { "SearchItemIntent": { "assistantDefinedSchemaTraits": [],
"assistantDefinedSchemas": [ { "domain": "system", "name": "ShowInAppSearchResultsIntent", "version": "1.0.0" } ], "authenticationPolicy": 0, "availabilityAnnotations": { "LNPlatformNameWildcard": { "introducedVersion": "*" } },
"QQ4DIFNBͷཪଆ wFYUSBDUBDUJPOTEBUB KTPO w4JSJ͕SVOUJNFͰಡΈऔΔ
"QQ4DIFNBͷཪଆ ✅͍͔ͭ͘ͷ4DIFNB9DPEFલޙͰ NFUBEBUBग़ྗʹ͕ࠩͳ͍͜ͱΛ֬ೝ
*O1FSTPO-BC࣭༰ w"QQ*OUFOUTͷ࣮ߦϓϩηεʹ͍ͭͯ w"QQ4DIFNBͷޓੑ w'FFECBDL"TTJTUBOUͰใࠂͨ͠όάΛฉ͖ʹߦ͘
*O1FSTPO-BC·ͱΊ w࣭ΛӳޠͰࣄલʹ༻ҙ͓ͯ͘͠ wϝϞΞϓϦɺจষΛݟͤΒΕΔܗ͕ྑ͍ wʢͰ͖ͨΒʣΤϏσϯε༻ҙ͢Δ w࣭ଟΊʹ༻ҙ͢Δͱྑ͍ w'"μΠϨΫτΞλοΫޮՌత
͓·͚7JTVBM*OUFMMJHFODFࢀߟࢿྉ w 88%$ΞϓϦʹϏδϡΞϧΠϯςϦδΣϯεΛ౷߹͢ΔͨΊͷϕετϓϥΫςΟε w IUUQTEFWFMPQFSBQQMFDPNKQWJEFPTQMBZXXED w ެࣜαϯϓϧίʔυ w IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPO"QQ*OUFOUTBEPQUJOHBQQJOUFOUTUP TVQQPSUTZTUFNFYQFSJFODFT
w LOULͷαϯϓϧίʔυʢ࠷খߏίʔυʹͳ͍ͬͯΔͷͰ͓͢͢ΊͰ͢ʣ w IUUQTHJUIVCDPNLOULZNUJPTBQQJOUFOUTTBNQMFUSFFNBJOWJTVBMJOUFMMJHFODF QSPDFTT