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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
野瀬田 裕樹
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
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
700
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
100
Creating Composable Callables in Contemporary C++
rollbear
0
140
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
120
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
170
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
11
5.6k
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
530
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
120
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
180
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
280
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
320
Thoughts on Productivity
jonyablonski
76
5.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
How to make the Groovebox
asonas
2
2.2k
Test your architecture with Archunit
thirion
1
2.3k
Evolving SEO for Evolving Search Engines
ryanjones
0
220
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
190
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Color Theory Basics | Prateek | Gurzu
gurzu
0
360
Embracing the Ebb and Flow
colly
88
5.1k
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ʙ