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)を読み解く - WWDC21
Search
notoroid
August 04, 2021
Programming
2
230
Swift 並行性(Concurrency)を読み解く - WWDC21
Swift Concurrency関連プレゼンテーションガイド
notoroid
August 04, 2021
Tweet
Share
More Decks by notoroid
See All by notoroid
iOS 26 SDKの新機能 (liquid抜き) - iOS26orLaterUpdateAndSceneForUIKit
notoroid
0
57
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
180
UIViewController - Interactive PopGesture
notoroid
0
50
Xcodeショートカット 2025年版
notoroid
0
68
ZIPでくれ - Apple謹製 geocoding/ reverse geocoding
notoroid
0
110
WeatherKit iOS18 update - お天気の更新
notoroid
0
88
AppIntentsの用途 - AppleのGPT元年
notoroid
1
190
Privacy manifests - Appleと開発コミュニティ
notoroid
1
240
とっさのAutoLayout - Rewind autolayout
notoroid
0
140
Other Decks in Programming
See All in Programming
Go言語での実装を通して学ぶLLMファインチューニングの仕組み / fukuokago22-llm-peft
monochromegane
0
110
兎に角、コードレビュー
mitohato14
0
170
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
370
MLH State of the League: 2026 Season
theycallmeswift
0
210
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
250
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
1.6k
時間軸から考えるTerraformを使う理由と留意点
fufuhu
12
4k
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.9k
Trem on Rails - Prompt Engineering com Ruby
elainenaomi
1
100
個人軟體時代
ethanhuang13
0
300
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
140
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Balancing Empowerment & Direction
lara
3
610
It's Worth the Effort
3n
187
28k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
Building Applications with DynamoDB
mza
96
6.6k
KATA
mclloyd
32
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Designing for Performance
lara
610
69k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Transcript
4XJGUฒߦੑ $PODVSSFODZ ΛಡΈղ͘ 88%$ 4XJGU$PODVSSFODZؔ࿈ϓϨθϯΨΠυ
ࢀߟࢿྉ"QQMF%FWFMPQFS IUUQTBQQTBQQMFDPNKQBQQBQQMFEFWFMPQFSJE 88%$༰ॱ࣍ຊޠରԠ͞Ε͍ͯ͘
88%$͔Βϲ݄ɻ 4XJGUݴޠͷۄͷBXBJUBTZOD BDUPS͕ൃද͞Ε·ͨ͠
͕ɺϲ݄ܦͬͯ৽ ༷ʹશ͘׳Εͳ͍ʂ
88%$ͷؔ࿈͢ΔϓϨθϯ ࢿྉΛͱ͓ͨ͠ͷͰհɻ
88%$ͰԿ͕͓͖ͨͷ͔ 4XJGU ͍ͭʹBTZODBXBJU͕ಋೖ͞Ε·ͨ͠ɻBTZODBXBJU ͚ͩͰͳ͘ɺBDUPS!.BJO"DUPS͕ಋೖɻ
88%$ͰԿ͕͓͖ͨͷ͔ 4XJGU ͍ͭʹBTZODBXBJU͕ಋೖ͞Ε·ͨ͠ɻBTZODBXBJU ͚ͩͰͳ͘ɺBDUPS!.BJO"DUPS͕ಋೖɻ BTZODBXBJUʹ͍ͭͯ88%$ҎલΑΓݴޠ༷ ͱͯ͠ఏҊ͞Ε͓ͯΓɺ৽ٕज़ʹΊ͟ͱ͍ෳͷ։ൃ ऀ༷ΑΓهࣄ͕ެ։͞Ε͍ͯΔɻ
1SPQPTBMʹࡌ ͍ͬͯͳ͍4XJGU ͷBTZODBXBJU ͕ૉΒ͍͠ͱࢥ ͏ཧతഎܠ IUUQTRJJUBDPN LPIFSJUFNT CFBFD
ಡΈͱͯ͠໘ന͍ɺ ໘ന͍͕ผʹٕज़ͰΩϟοΩϟͨ͠ ͍Θ͚Ͱͳ͍ͱ͍͏ͷ͕ຊԻɻ
&$."4DSJQUͰઌΜͯ͡ಋೖ͞Εͯ ͍ͨػೳ͕4XJGUʹ͖ͬͯͨ͋Γ͕ ͕ͨΔؾແ͔ͬͨΓ͢Δɻ
৽͍͠ݴޠ༷͕ಋೖ͢Δ ඞཁ͕͋Δ ඞવੑ ʹೲಘ͠ɺ ଉΛు༷͘ʹࣗવʹར༻Ͱ͖Δ͜ͱ͕ཧͰ
ͱ͍͏ཧ೦ͷͱɺBTZODBXBJUBDUPSपΓ͕ಋ ೖ͞Εͨࡍͷ4XJGUݴޠʹ͓͚ΔฒߦੑΛѻ͏্Ͱ ͷϨΪϡϨʔγϣϯมߋʹ͍ͭͯղܾʹઆ໌͢Δɻ
88%$ͷ 4XJGUʹ͓͚Δฒߦੑ ֓ཁ
BTZODBXBJU w "TZODඇಉظΛࣔ͢म০ࢠͰ w BTZOD͕༩͞ΕΔͱBXBJUΛͬͯॲཧऴྃ·Ͱडঢ়ଶʹ͢ Δ͜ͱΛӅṭͰ͖Δ w NBD04J1IPOFͰͷϚϧνεϨου্ͷॲཧ͕࣮ࡍͲ͏ͳͬͯ ͍Δ͔4XJGUίʔυهड़ऀଆ͔ΒӅṭ͞Ε͍ͯΔ
BDUPS w ෳͷεϨου͔Βݺͼग़͞ΕΔΛอޢ͢ΔΈΛDMBTTϥ ΠΫͳఆٛͰهड़Ͱ͖Δ w ϓϩύςΟෳ͔ΒͷมߋͷࡍʹBXBJUͰडՄೳ w ϝιουΛఆٛ͢Δͱͦͷϝιου͕ݺͼऴΘΔ·Ͱ֎෦͔Βม ߋ͕ՃΘΒͳ͍ w
ͷڝ߹Λ͚͞ΔͨΊ෦తʹ4JHOBMɺ4FNBQIPSFͳͲΞΫ ηε੍ޚػೳΛ͍ͬͯΔ͕4XJGUίʔυهड़ऀଆ͔ΒӅṭ͞ Ε͍ͯΔɻ
ߏԽ͞Εͨಉظॲཧ w "TZODBXBJUΛ֊తʹݺͼग़͠ͱݺͼग़͠֊Λߟྀͨ͠ಉظ ॲཧΛ࣮ݱͰ͖Δ w 4XJGUΑΓલಠཱͨ͠ಉظॲཧΛ·ͱΊΔͳͲ࣮ͯ͠ݱͰ ͖ͨ͜ͱ͕4XJGU͔ΒσϑΥϧτͷಉظॲཧѻ͍ͱͳͬͨ w ͜Ε·ͰͷಉظॲཧΦϓγϣϯѻ͍ͱͳΓಠཱͨ͠ಉظॲཧͱ ໋໊
w ಠཱͨ͠ಉظॲཧΦϓγϣϯѻ͍ʹͳͬͨɺBTZODBXBJU ΑΓ໌ࣔతʹݺͼग़͠ඞཁ
!.BJO"DUPS w "DUPSෳΞΫηε͕͋ͬͨ߹ͷΛอޢ͢ΔΈΛఏڙ ͢Δ͚͕ͩͩͬͨ w !.BJO"DUPSडޙʹඞͣϝΠϯεϨου͔Βݺͼग़͞ΕΔอ ূ͢ΔͨΊͷΈ w 4XJGU"UUSJCVUFTͳͷͰ4XJGUͷ༷͔Βएׯ֎ΕΔ w
4%,ͰϝΠϯεϨουPSϝΠϯεϨουҎ֎ݺͼग़͔͠໌ࣔͰ ͖͍ͯͳ͔ͬͨͷ ؔɺΫϥεͷϓϩύςΟͳͲ ͕໌ࣔతʹ ͳͬͨ
తʹ͍͏ͱʜ w ৽͍͠ϘΩϟϒϥϦʔͱͯ͠BTZODBXBJUΛಋೖ͢Δ͜ͱͰॲཧ ͪͷهड़Λ͘هड़Ͱ͖ΔΑ͏ʹͳͬͨɻͨͩ͠ඇಉظʹͨ͠ࡍʹى ͖Δτϥϒϧίʔυهड़ऀଆͷͰ͋Δ͜ͱมԽແ͠ w ฒྻಉظͷฒྻੑͱߏԽ͞ΕͨฒྻॲཧʹΑΓฒྻॲཧʹίʔυత ͳॊೈੑ͕ੜ·Ε͍ͯΔɻͦΕΛ࣮ݱ͢ΔͨΊ࣮ݱ͢ΔͨΊBTZOD BXBJUͰεϨουΛίʔυهड़ऀ͔ΒӅṭ͍ͯ͠ΔΑ͏ͳͷ w
6*ύʔπͳͲϝΠϯεϨουݺͼग़͠Λอূ͢ΔͨΊͷهड़ͱͯ͠ !.BJO"DUPS͕Ճ͞Εͨɻίʔυهड़ऀݺͼग़͠ݩͷεϨουʹ ҙΛ͚Δඞཁ͕͕͋ͬͨݴޠϨϕϧͰ҆શͳݺͼग़͕͠อূ͞Ε ͨ
ϓϨθϯςʔγϣϯհ
w .FFUBTZODBXBJUJO4XJGU w .FFU"TZOD4FRVFODF w &YQMPSFTUSVDUVSFE DPODVSSFODZJO4XJGU w 1SPUFDUNVUBCMFTUBUFXJUI 4XJGUBDUPST
w %JTDPWFSDPODVSSFODZJO 4XJGU6* ϓϨθϯςʔγϣϯհ
.FFUBTZODBXBJUJO 4XJGU IUUQTEFWFMPQFSBQQMFDPNWJEFPT QMBZXXED w BTZODΛ͏ؔͷఆٛํ ๏ͱɺBXBJUͷ͍ํʹͭ ͍ͯͷϓϨθϯςʔγϣ ϯɻ
.FFU"TZOD4FRVFODF IUUQTEFWFMPQFSBQQMFDPNWJEFPT QMBZXXED w BTZOD͕Ճ͞Εͨݺͼग़ ͠ΛྻԽ͢ΔͱBXBJU͠ ͨࡍʹฒߦͯ͠ݺͼग़͞ ΕΔ͜ͱʹ͍ͭͯͷϓϨθ ϯςʔγϣϯɻ
&YQMPSFTUSVDUVSFE DPODVSSFODZJO4XJGU IUUQTEFWFMPQFSBQQMFDPNWJEFPT QMBZXXED w "TZOD͕Ճ͞Εͨݺͼग़͠ ෦ͰBXBJUΛ͏͜ͱ͕Ͱ ͖ΔΛઆ໌ͨ͠ϓϨθϯς ʔγϣϯɻ w
Τϥʔ͕͋ͬͨ߹ʹFSSPS ΛUISPXͨ͠߹ͷڍಈʹͭ ͍ͯͷݴٴ͋Γɻ w ಠཱͨ͠ඇಉظॲཧʹ͍ͭͯ ຊϓϨθϯςʔγϣϯͰઆ ໌͍ͯ͠Δɻ
1SPUFDUNVUBCMFTUBUF XJUI4XJGUBDUPST IUUQTEFWFMPQFSBQQMFDPNWJEFPT QMBZXXED w BDUPSͱ!.BJO"DUPSͷઆ ໌ w ༰తʹ!.BJO"DUPSΛ આ໌͢ΔͨΊͷBDUPSΛઆ
໌͢Δͱ͍ͬͨ
%JTDPWFSDPODVSSFODZJO 4XJGU6* IUUQTEFWFMPQFSBQQMFDPNWJEFPT QMBZXXED w BTZODBXBJUBDUPS͕6* पΓͷίʔσΟϯάελΠ ϧΛม͑Δ͜ͱ͔͕֬ͩ Ұ൪ԸܙΛड͚͍ͯΔͷ 4XJGU6*ͰΔ͜ͱΛࣔ͢ϓ
Ϩθϯςʔγϣϯɻ
ࡶ؍
ίϯγϡʔϚʔιϑτΣΞʹಉظॲཧ͕ಋೖ͞Ε࢛ͯੈلᶃ w 8JOEPXTͷ͜ΖϚʔέςΟϯάతʹػೳ͕Ճ͞Ε։ൃऀ ͷαϙʔτͳ͔ͬͨ w ˡ$$ ݴޠͷڥ͕ϚϧνεϨουΛߟྀ͠ͳ͍ظ͕ؒଓ͍ ͨ w ฒߦੑʹΑΔੑೳʹ͍ͭͯ+BWB7.͕αʔόʔαΠυͰূ໌͠
͍ͯͨ w ˡධՁ͞Εͨͷ+BWB4DSJQUͷϚϧνεϨουੑೳͩͬͨ w +BWB7.ݴޠͱͯ͠4DBMB͕ొ
ίϯγϡʔϚʔιϑτΣΞʹಉظॲཧ͕ಋೖ͞Ε࢛ͯੈلᶄ w ΞϓϦͰ"QQMF͕Ͱ$FOUSBM%JTQBUDI2VFVFͰCMPDLߏจͱɺ มͷΩϟϓνϟΛಋೖ w ˡίϯύΠϥʹϝεΛೖΕΔܾஅ͔Β৽ݴޠ4XJGU͕ੜ w ฒߦੑʹ͍ͭͯͷ͕ٞ׆ൃʹͳͬͨͷ/PEF+4 αʔόʔαΠ υ+BWB4DSJQU
ͷBTZODBXBJU w ˡฒߦੑΛهड़ํ๏ʹܾண͢ΔϚϧνεϨουΛѻ͏ݴޠͰͷ ಋೖݕ౼தͩͬͨ
ݸਓత4XJGUฒߦੑݟղ
4XJGUݴޠͷ$PODVSSFODZͰલʹෆ ʹίϯγϡʔϚʔιϑτʹಋೖ͞Εͨಉ ظॲཧͷه๏ʹҰఆͷܾண͕͍ͭͨͷͰ