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
90
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
390
SwiftのSIMDとその利用方法
kntkymt
2
340
Swiftのオーバーロード選択のスコア規則21種類
kntkymt
0
230
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
LoopHub - ローカルで動く GitHub で、AI と共同開発
jugyo
0
410
Laravelのアプリケーションをどこにデプロイするか #ツナギメオフライン.9
akase244
0
110
リアルな遅延を測る仕様
kota_yata
1
140
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
980
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
0
220
Hono + Inertia + React で LP を構築した話
oukayuka
2
210
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
0
350
MySQLとPostgreSQLって何が違うの?
akagami
PRO
0
160
型解析で実現する Go の言語内 DSL / Conference に Go! タイムテーブルの歩き方 for Gophers
mazrean
0
130
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
570
Foundry Localでエージェント開発
seosoft
0
130
Featured
See All Featured
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
590
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
How to Think Like a Performance Engineer
csswizardry
28
2.8k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
470
Accessibility Awareness
sabderemane
1
200
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
The Curse of the Amulet
leimatthew05
2
14k
Paper Plane
katiecoart
PRO
2
53k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1k
The Spectacular Lies of Maps
axbom
PRO
1
970
Designing for Performance
lara
611
70k
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