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
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
130
UIViewController - Interactive PopGesture
notoroid
0
34
Xcodeショートカット 2025年版
notoroid
0
52
ZIPでくれ - Apple謹製 geocoding/ reverse geocoding
notoroid
0
76
WeatherKit iOS18 update - お天気の更新
notoroid
0
73
AppIntentsの用途 - AppleのGPT元年
notoroid
1
180
Privacy manifests - Appleと開発コミュニティ
notoroid
1
230
とっさのAutoLayout - Rewind autolayout
notoroid
0
130
UVC(USB video class)と マルチプラットフォーム - UVC support by Apple multiplatform
notoroid
0
360
Other Decks in Programming
See All in Programming
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
160
XP, Testing and ninja testing
m_seki
3
200
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
150
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
160
VS Code Update for GitHub Copilot
74th
1
400
Gleamという選択肢
comamoca
6
760
PicoRuby on Rails
makicamel
2
100
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
420
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
110
Create a website using Spatial Web
akkeylab
0
300
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
810
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
570
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Code Reviewing Like a Champion
maltzj
524
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
210
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Automating Front-end Workflow
addyosmani
1370
200k
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Ͱલʹෆ ʹίϯγϡʔϚʔιϑτʹಋೖ͞Εͨಉ ظॲཧͷه๏ʹҰఆͷܾண͕͍ͭͨͷͰ