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
Swift ConcurrencyでよりSwiftyに
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
野瀬田 裕樹
February 22, 2026
Programming
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift ConcurrencyでよりSwiftyに
hakodate.swift 登壇資料 #hakodate_swift
https://japan-region-swift.connpass.com/event/371217/
野瀬田 裕樹
February 22, 2026
More Decks by 野瀬田 裕樹
See All by 野瀬田 裕樹
iOS26時代の新規アプリ開発
yuukiw00w
0
240
Human Interface Guidelines 2
yuukiw00w
0
64
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
270
HIG学習用スライド
yuukiw00w
0
190
FlutterKaigi 2025: What is iOS Assistive Access? UI considerations for Flutter
yuukiw00w
0
62
Swift6.2時代のconcurrencyを考える会
yuukiw00w
2
1.7k
実践!App Intents対応
yuukiw00w
1
500
App Intents再入門
yuukiw00w
0
87
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
290
Other Decks in Programming
See All in Programming
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
4
1k
CSC307 Lecture 17
javiergs
PRO
0
320
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.6k
Oxcを導入して開発体験が向上した話
yug1224
4
310
Creating Composable Callables in Contemporary C++
rollbear
0
130
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
690
Contextとはなにか
chiroruxx
1
320
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4k
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
200
Vite+ Unified Toolchain for the Web
naokihaba
0
310
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
240
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
350
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
720
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
240
Tell your own story through comics
letsgokoyo
1
950
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Automating Front-end Workflow
addyosmani
1370
210k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Faster Mobile Websites
deanohume
310
31k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
GitHub's CSS Performance
jonrohan
1033
470k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
300
Transcript
4XJGU$PODVSSFODZͰ ΑΓ4XJGUZʹ ాɹ༟थʢ!ZOPTFEBʣ
4XJGUͰॻ͘ͳΒ4XJGUZͳίʔυΛॻ͖͍ͨͰ͢ΑͶʁ
ࠓճͷൃදΛػʹ4XJGUZͳίʔυΛॻ͖·͠ΐ͏ʂ
ͱݴ͍ͭͭ
4XJGUZͳίʔυͬͯԿ
4XJGUZͱ͍͏୯ޠͷҙຯ
4XJGUZͳίʔυ4XJGUΒ͍͠ίʔυ
4XJGUZͳίʔυ㱠4XJGUΒ͍͠ίʔυ
4XJGUZͳίʔυૉૣ͍ίʔυ
4XJGUZͳίʔυΛॻ͜͏ ૉૣ͍ͱݴͬͯ৭Μͳछྨ͕͋Δ w ࣮ߦ͕͍࣌ؒ w Ϗϧυ͕͍࣌ؒ w ཧղʹཁ͢Δ͕͍࣌ؒʢ4XJGUΒ͍͠ίʔυ͔͜͜ʣ
4XJGUZͳίʔυΛॻ͜͏ ૉૣ͍ͱݴͬͯ৭Μͳछྨ͕͋Δ w ࣮ߦ͕͍࣌ؒ w Ϗϧυ͕͍࣌ؒ w ཧղʹཁ͢Δ͕͍࣌ؒʢ4XJGUΒ͍͠ίʔυ͔͜͜ʣ
࣮ߦ͕͍࣌ؒॲཧͷ͓ ͶͷৼಈΛγϛϡϨʔγϣϯͯ͠ΈΑ͏ʂ Fi = k∑ j≠i (xj − xi )
શ݁߹ͯ͠Δόωͷৼಈͷ༷ࢠ
͜͏͍͏ͱ͖
"DDFMFSBUFϑϨʔϜϫʔΫ w $16্Ͱ࣌ؒͷ͔͔Δ৭ʑͳԋࢉΛߦ͏ͨΊͷϑϨʔϜϫʔΫ w ػցֶशɿ#//4 w ը૾ॲཧɿW*NBHF w σδλϧ৴߸ॲཧɿW%41 w
ϕΫτϧɺߦྻͷԋࢉɿW'PSDFʢϕΫτϧʹର͢Δࢉज़ؔӽؔͷ࣮ߦʣ ɹɹɹɹɹɹɹɹɹɹɹTJNEʢখنͳϕΫτϧߦྻͷԋࢉ༻ͷܕͱؔʣ w ઢܗɿ#-"4ʢϕΫτϧͱߦྻͷԋࢉʣ ɹɹɹɹɹ-"1"$,ʢݻ༗ɺಛҟɺߦྻҼղɺઢܗ࿈ཱํఔࣜͳͲʣ ɹɹɹɹɹ4QBSTF4PMWFSTʢߦྻ͕ૄߦྻͰ͋Δ࿈ཱํఔࣜʹର͢Δઢܗԋࢉʣ w ఆੵɿ2VBESBUVSFʢ༗ݶ·ͨແݶͷ۠ؒʹΘͨΔؔͷఆੵͷۙࣅʣ
#-"4 w #BTJD-JOFBS"MHFCSB4VCQSPHSBNTͷུͰɺઢܗԋࢉͷ"1*༷ w ͭͷ-FWFM͕͋Δ w -FWFMɿεΧϥʔԋࢉɺϕΫτϧԋࢉɺϕΫτϧϕΫτϧԋࢉ w -FWFMɿߦྻϕΫτϧԋࢉ w
-FWFMɿߦྻߦྻԋࢉ w ܭࢉͷେ෦Λ#-"4ϧʔνϯʹԡ͠ࠐΊΔ͜ͱͰߴԽͰ͖Δ ʢ͏·͘#-"4Λ͏ܗʹఆࣜԽ͢ΔͱॲཧΛߴԽͰ͖Δʣ
σϞ ύλʔϯ࣮ͯ͠Έͨ w ஞ࣍ॲཧʢ௨ৗͷGPSϧʔϓͰܭࢉʣ w ฒྻॲཧʢ5BTL(SPVQΛ࡞ͬͯฒྻԽͯ͠ܭࢉʣ w #-"4 w #-"4
ฒྻॲཧʢ5BTL(SPVQͰฒྻԽͯ͠ݸผʹ#-"4ར༻ʣ
݁Ռ ࣮ߦ࣌ؒ w /͕খ͍͞ͱ͖ɿஞ࣍ฒྻ#-"4㲈#-"4 ฒྻ w /͕େ͖͍ͱ͖ɿஞ࣍ฒྻ#-"4#-"4 ฒྻ w ฒྻԽΑΓ#-"4ͷޮՌ͕ѹత
w #-"4 ฒྻԽαΠζ͕େ͖͍࣌ͷΈ༗ޮ
#-"4 w $16ͷϕΫτϧॲཧػೳΛ׆༻͢Δߴͳ෦࣮͕ҝ͞Ε͍ͯΔ w ࣮ߦ࣌ʹͦͷϓϩηοαʹ࠷దͳ໋ྩΛબͿΑ͏ʹͳ͍ͬͯΔ w ͜ͷ࠷దԽ͕͔ͳΓޮ͍͍ͯΔͷͰશવԋࢉ͕ҧ͏
ઢܗॲཧΛߴԽ͍ͨ࣌͠ ͳΔ͘"DDFMFSBUFϑϨʔϜϫʔΫΛ͑ΔܗʹఆࣜԽ͢Δ w ͕ૄߦྻͳ࿈ཱํఔࣜΛղ͖͍ͨ߹ˠ4QBSTF4PMWFST w ີߦྻͳઢܗ࿈ཱํఔࣜΛղ͘ͳͲɺ యܕతͳઢܗʹऔΓΈ͍ͨ߹ˠ-"1"$, w ϕΫτϧߦྻͷԋࢉΛ͍ͨ͠߹ˠ#-"4
w ϕΫτϧʹࢉज़ӽؔΛద༻͢Δ߹ˠW'PSDF w %PVCMFཁૉ͕ཁૉҎԼͷϕΫτϧYཁૉҎԼͷߦྻΛॲཧ͍ͨ͠߹ˠTJNE
ઢܗॲཧΛߴԽ͍ͨ࣌͠ ՃͰඞཁͳΒϚϧνεϨουԽ͢Δ w #-"4ͷ෦ฒྻʹͤΔύλʔϯ w ࣗͰखಈฒྻ͢Δύλʔϯ
ઢܗॲཧΛߴԽ͍ͨ࣌͠ ՃͰඞཁͳΒϚϧνεϨουԽ͢Δ w #-"4UISFBEJOH.PEFMʹNVMUJ5ISFBEFEΛઃఆ͢Δ w ʏʹTJOHMF5ISFBEFEΛઃఆͷ্ɺࣗͰϚϧνεϨουԽ͢Δ
ઢܗॲཧΛߴԽ͍ͨ࣌͠ ՃͰඞཁͳΒϚϧνεϨουԽ͢Δ w #-"4UISFBEJOH.PEFMʹNVMUJ5ISFBEFEΛઃఆ͢Δ w ాڥͰ͋·Γ࠷దԽͯ͘͠Εͳ͔ͬͨ w ͭ·Γ࣮αΠζʹΑͬͯޮ͔ͳ͍͜ͱ͕͋ΔͷͰɺཁܭଌ w
ಉ্ʹTJOHMF5ISFBEFEΛઃఆͷ্ɺࣗͰϚϧνεϨουԽ͢Δ
ઢܗॲཧΛߴԽ͍ͨ࣌͠ ՃͰඞཁͳΒϚϧνεϨουԽ͢Δ w #-"4UISFBEJOH.PEFMʹNVMUJ5ISFBEFEΛઃఆ͢Δ w TJOHMF5ISFBEFEΛઃఆͷ্ɺࣗͰϚϧνεϨουԽ͢Δ w 5BTL(SPVQͰෳλεΫΛ࡞Δ w
%JTQBUDI2VFVFDPODVSSFOU1FSGPSN JUFSBUJPOTFYFDVUF ͰฒྻGPSϧʔϓΛ࡞Δ
DPODVSSFOU1MBUGPSNʹ͍ͭͯ w ࢦఆճ JUFSBUJPOT ͚ͩҾͷΫϩʔδϟʔΛ࣮ߦ͢Δؔ w ෳͷίΞΛͬͯޮతͳฒྻGPSϧʔϓͱ࣮ͯ͠ߦͯ͘͠ΕΔ w ಉظॲཧͳͷͰ.BJO"DUPS͔ΒݺͿͱةݥ w
ಉͷॲཧ4XJGU$PODVSSFODZʹͳ͍ʢͷͰࣗ࡞ͷඞཁ͋Γʣ w JUFSBUJPOTΛར༻ՄೳͳίΞͷഒҎ্ʹઃఆ͢Δͷ͕͓͢͢Ί
ͦ͏͍͑ ʮඞཁͳΒϚϧνεϨουԽ͢Δʯ 88%$ͰࣅͨΑ͏ͳΛฉ͖·ͨ͠Ͷ
None
None
None
͡Ό͍͋ͭͲ͏ͬͯฒྻԽ͢Δͷʁ
$PODVSSFODZಋೖखॱ w ϝΠϯͷΞϓϦϞδϡʔϧ6*ϞδϡʔϧͰ %FGBVMU"DUPS*TPMBUJPOΛ.BJO"DUPSʹઃఆ͢Δ ʢ6*ϞδϡʔϧͰ%FGBVMU"DUPS*TPMBUJPO.BJO"DUPSʣ
$PODVSSFODZಋೖखॱ w 6*ϞδϡʔϧͰ%FGBVMU"DUPS*TPMBUJPO.BJO"DUPS w ϝΠϯεϨουͷෛՙ͕ߴ͍߹ɺ ฒߦॲཧΛಋೖ͢Δલʹ*OTUSVNFOUTͳͲͰ ϘτϧωοΫΛಛఆͯ͠ղফΛࢼΈΔ ʢϝΠϯεϨουͷෛՙ͕ߴ͍ͳΒ*OTUSVNFOUTͰௐࠪˠղফʣ
$PODVSSFODZಋೖखॱ w 6*ϞδϡʔϧͰ%FGBVMU"DUPS*TPMBUJPO.BJO"DUPS w ϝΠϯεϨουͷෛՙ͕ߴ͍ͳΒ*OTUSVNFOUTͰௐࠪͯ͠ղফ w ϝΠϯεϨου͔Βग़͍ͨ͠ ʢݺͼग़͠ݩͱҧ͏"DUPSͰಈ࡞͍ͤͨ͞ʣ߹ɺ ؔʹ!DPODVSSFOUΛ༩͢Δ ʢόοΫάϥϯυͰॲཧ͍ͨ͠ͳΒ!DPODVSSFOUʣ
$PODVSSFODZಋೖखॱ w 6*ϞδϡʔϧͰ%FGBVMU"DUPS*TPMBUJPO.BJO"DUPS w ϝΠϯεϨουͷෛՙ͕ߴ͍ͳΒ*OTUSVNFOUTͰௐࠪͯ͠ղফ w όοΫάϥϯυͰॲཧ͍ͨ͠ͳΒ!DPODVSSFOU w ڞ༗͍ͨ͠εϨουηʔϑͳՄมঢ়ଶ4FOEBCMFΛ͚ͭΔ
$PODVSSFODZಋೖखॱ w 6*ϞδϡʔϧͰ%FGBVMU"DUPS*TPMBUJPO.BJO"DUPS w ϝΠϯεϨουͷෛՙ͕ߴ͍ͳΒ*OTUSVNFOUTͰௐࠪͯ͠ղফ w όοΫάϥϯυͰॲཧ͍ͨ͠ͳΒ!DPODVSSFOU w ڞ༗͍ͨ͠εϨουηʔϑͳՄมঢ়ଶ4FOEBCMFΛ͚ͭΔ w
ඇ4FOEBCMFͰOPOJTPMBUFEͰࡁΉͳΒOPOJTPMBUFEʹ͢Δ
$PODVSSFODZಋೖखॱ w 6*ϞδϡʔϧͰ%FGBVMU"DUPS*TPMBUJPO.BJO"DUPS w ϝΠϯεϨουͷෛՙ͕ߴ͍ͳΒ*OTUSVNFOUTͰௐࠪͯ͠ղফ w όοΫάϥϯυͰॲཧ͍ͨ͠ͳΒ!DPODVSSFOU w ڞ༗͍ͨ͠εϨουηʔϑͳՄมঢ়ଶ4FOEBCMFΛ͚ͭΔ w
ඇ4FOEBCMFͰOPOJTPMBUFEͰࡁΉͳΒOPOJTPMBUFEʹ͢Δ w සൟͳίϯςΩετεΠον͕ൃੜ͢Δ߹BDUPSͰՄมঢ়ଶΛཧ͢Δ
·ͱΊ
4XJGU$PODVSSFODZͰฒྻԽ͢Δ㱠4XJGUZ ʢԿͰ͔ΜͰฒྻԽ͢Ε͍͍Θ͚͡Όͳ͍ʣ
ஈ֊తʹฒྻԽΛऔΓΉ͜ͱ͕4XJGUZʹܨ͕Δ ·ͣ࠷ॳʹΞϧΰϦζϜඪ४ϥΠϒϥϦͷ׆༻ʹऔΓ͏
ஈ֊తʹฒྻԽΛऔΓΉ͜ͱ͕4XJGUZʹܨ͕Δ ·ͣ࠷ॳʹΞϧΰϦζϜඪ४ϥΠϒϥϦͷ׆༻ʹऔΓ͏ ύϑΥʔϚϯενϡʔχϯάܭଌ͕ඞਢ
ઢܗΛΔͳΒ"DDFMFSBUFϑϨʔϜϫʔΫ͓͢͢ΊͰ͢ʂ
ʙ'JOʙ