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-async-algorithms...? へえ…面白そうじゃん…?
Search
k-kohey
April 08, 2022
Programming
3
1.5k
swift-async-algorithms...? へえ…面白そうじゃん…?
2022/04/08に社内で行ったLT会にて使用した資料
k-kohey
April 08, 2022
Tweet
Share
More Decks by k-kohey
See All by k-kohey
ゲームボーイアドバンスでSwiftを動かそう
k_koheyi
0
960
Swift Package Mangerのバグを直した話
k_koheyi
2
1.4k
[社内勉強会]Parchment-swiftの実装説明
k_koheyi
0
120
[社内勉強会]Combineの説明
k_koheyi
0
29
あるインスタンスの取る値が 何パターンあるか数えてみるンゴ!
k_koheyi
1
150
Tuistを用いた Xcode Project管理の紹介
k_koheyi
0
190
SwiftでわかるSOLID原則 iOSDC 2020
k_koheyi
3
2.7k
Visitorパターン
k_koheyi
0
160
Application Design 勉強会23-25章
k_koheyi
0
64
Other Decks in Programming
See All in Programming
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
19
4.2k
color-scheme: light dark; を完全に理解する
uhyo
7
500
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
9
3.2k
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
1.2k
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
240
もう僕は OpenAPI を書きたくない
sgash708
6
1.9k
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
1
160
Webフレームワークとともに利用するWeb components / JSConf.jp おかわり
spring_raining
1
130
オレを救った Cline を紹介する
codehex
7
2.8k
JAWS Days 2025のインフラ
komakichi
1
130
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
230
Swift Testingのモチベを上げたい
stoticdev
2
170
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
We Have a Design System, Now What?
morganepeng
51
7.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
260
How to train your dragon (web standard)
notwaldorf
91
5.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Done Done
chrislema
182
16k
KATA
mclloyd
29
14k
Scaling GitHub
holman
459
140k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Building an army of robots
kneath
303
45k
Transcript
LLPIFZ !L@LPIFZJ TXJGUBTZODBMHPSJUINTʁ ͑ʜ໘നͦ͏͡ΌΜʜʁ ୈೋճνΩνΩ-5ձ
͡Ίʹ w TXJGUBTZODBMHPSJUINTͱ͍͏044͕ ʹ"QQMF͔Βൃද͞Ε·ͨ͠ w BTZODBXBJUʹରԠͨ͠ɺ࣌ؒʹجͮ͘Ξ ϧΰϦζϜΛ࣮ͨ͠ͷ w ࣌ͰЌ൛ w
͢Ͱʹ(JU)VC͔ΒӾཡՄೳ
͡Ίʹ w ϕʔλ൛Ͱ͕͢υΩϡϝϯτ ๛ʹ͔͔Ε͍ͯ·͢ w ֤ϑΝΠϧΛݟΔͱɺఏڙ͞ Ε͍͑ΔΠϯλϑΣʔεͱͦ ͷ࣮͕؆୯ʹΘ͔Γ·͢
͡Ίʹ w ϕʔλ൛Ͱ͕͢υΩϡϝϯτ ๛ʹ͔͔Ε͍ͯ·͢ w ֤ϑΝΠϧΛݟΔͱɺఏڙ͞ Ε͍͑ΔΠϯλϑΣʔεͱͦ ͷ࣮͕؆୯ʹΘ͔Γ·͢ ࠓճ υΩϡϝϯτͷใ࣮ࡍʹ৮ͬͯΈͨײΛجʹ
TXJGUBTZODBMHPSJUINT ʹ͍ͭͯ؆୯ʹհ͠·͢🙌
TXJGUBTZODBMHPSJUINT ֓ཁ w 3&"%.&ʹ͜ͷ044ͷΰʔϧ͕࣍ͷΑ͏ʹઆ໌͞Ε͍ͯΔ w ୈҰڃΦϒδΣΫτͱBTZODBXBJUͷ౷߹ w λΠϜϕʔεΞϧΰϦζϜͷఏڙ w 3Yʹ͓͚ΔEFCPVODFUISPUUMFʹڍ͛ΒΕΔ࣌ؒʹؔ͢ΔͷɺNFSHFDPNCJOF-BUFTUʹ
ڍ͛ΒΕΔॱংʹؔ͢Δͷ·Ͱ w ΫϩεϓϥτοϑΥʔϜ͓ΑͼΦʔϓϯιʔε w 4XJGU1BDLBHF.BOBHFS͔ΒಋೖՄೳ w ؆୯ʹோΊͨײͱͯ͠ 88%$ʹͯൃද͞Εͨ "TZOD4FRVFODFΛͬͱศརʹ͑ΔΑ͏ʹ͠·ͨ͠ʂͱ͍͏༰ͩͬͨ
"TZOD 4FRVFODFʁ
"TZOD 4FRVFODF BTZODISPOPVTͱTFRVFODF ྆ํͷੑ࣭Λซͤ࣋ͭʜ― ϓϩτίϧ
"TZOD4FRVFODF 4FRVFODFͱ w 4FRVFODF1SPUPDPM"SSBZ %JDUJPOBSZ͕ద߹͍ͯ͠Δ w NBQ fi MUFSͳͲͷΠϯλϑΣʔεΛ ఏڙ
w 4FRVFODF1SPUPDPM*UFSBUPSͷ࣮ Λཁٻ͠ɺͦͷ*UFSBUPSΛར༻͠ ͯGPSJOϧʔϓ͔ΒΛऔΓग़͢͜ͱ ͕Ͱ͖Δ
"TZOD4FRVFODF BTZODͳ4FRVFODFͱ w ඇಉظͰ͕ܾఆ͞ΕΔͷʹରͯ͠ 4FRVFODFͱಉ༷ʹGPSJOϧʔϓΛదԠ Ͱ͖Δ w 4FRVFODFͱಉ༷ʹNBQ fi MUFSͷΑ͏
ͳߴڃ͕ؔఏڙ͞Ε͍ͯΔ
TXJGUBTZODBMHPSJUINTͷ"1* 'VODUJPOBM3FBDUJWF1SPHSBNNJOHʢҎ߱'31ʣͬΆ͍ΠϯλϑΣʔε w '31ʹࣅͨΠϯλϑΣʔε w ෳͷ"TZOD4FRVFODFΛ݁߹͢Δ ϝιου w NFSHF[JQ
w ࣌ؒతͳૢ࡞Λߦ͏ϝιου w EFCPVODFUISPUUMF
TXJGUBTZODBMHPSJUINTͷ"1* 'VODUJPOBM3FBDUJWF1SPHSBNNJOHʢҎ߱'31ʣͬΆ͍ΠϯλϑΣʔε w "TZOD$IBOOFM w 3Yͷ4VCKFDUʹࣅ͍ͯͯɺΛ௨ͨ͠Γ௨ͨ͠ΓߪಡͰ͖Δ w "TZOD4FRVFODFʹద߹͓͠ΓɺGPSJOϧʔϓΛదԠՄೳ w CBDLQSFTTVSFͷ࣮ݱ
w Πϕϯτ͕௨͞ΕΔͱॲཧΛTVTQFOE͠ɺߪಡଆ͕ͦͷΛಡ ΈऔΔͱSFTVNF͢ΔௐʹΑͬͯɺߪಡଆͷॲཧΛ্ճΔ ͰΠϕϯτ͕௨͞Εͳ͍Α͏ʹ͍ͯ͠Δ w ͜ͷΑ͏ͳ੍ޚ͕εϨουΛϩοΫͨ͠Γͯ͠ؤுΔͷͰͳ ͘4XJGU$PODSSFODZͰ͖ͪΜͱಈ͘Α͏ʹ୲อ͞ΕͯΔͷ ҆৺ײ͋Δ͠ɺ"TZOD$IBOOFMͷ࠷େͷಛͳͷ͔ͳͱײͨ͡
TXJGUBTZODBMHPSJUINTͷ"1* "TZOD4FRVFODFͱୈҰڃΦϒδΣΫτΛ݁߹͢ΔΠϯλϑΣʔε w 4FRVFODFͷϦςϥϧ͔Β؆୯ʹ"TZOD4FRVFODFΛऔಘͰ͖ΔϓϩύςΟ w ͜ͷϓϩύςΟ͔Βಘͨͱଞͷ"TZOD4FRVFODFΛNFSHFͨ͠Γͱ ׆༻Ͱ͖Δ
ͳΔ΄Ͳʜ
4XJGU$PODVSSFODZͰ '31ͬΆ͍ࣄ͕Ͱ͖Δͬͯʜ ίτʜ
$PNCJOFͰ Α͘ͳ͍ʁʂ
$PNCJOFͱͷൺֱ TXJGUBTZODBMHPSJUINTͷಛ w 044Ͱ͋Δ͜ͱ w ෆ۩߹ڍಈ͕͔Βͳ͍ͱ͜Ζ͕͋ΕɺιʔείʔυΛݟͯ શཧղͰ͖Δ w ΫϩεϓϥοτϑΥʔϜରԠͰ͋Δ͜ͱ
w 04ʹґଘ͍ͯ͠ͳ͍ͨΊɺ04ґଘͷෆ۩߹͕ى͖ʹ͍͘ʁ w J04ͰJ04Ͱɺ͋Δ͍8JOEPXTͰ4XJGUͷόʔδϣϯ͕ಉ͡ͳΒશͯͰಉ ͡ڍಈΛ͢Δͱ͍͏ظ w 4XJGUΒ͍͠खଓ͖తͳهड़ͰετϦʔϜΛѻ͑Δ͜ͱ
$PNCJOFͱͷൺֱ ίʔυͷࠩ TXJGUBTZODBMHPSJUINT $PNCJOF ͲͪΒFNBJMͱVTFS*%ͷೖྗ͕͋Ε ϩάΠϯϘλϯΛ"DUJWFʹ͢Δॲཧ
$PNCJOFͱͷൺֱ ίʔυͷࠩ TXJGUBTZODBMHPSJUINT $PNCJOF GPSJOUSZDBUDIͳͲͷ੍ޚจ͕ͦͷ··͑ΔͷͰ ΑΓ4XJGUΒ͘͠
͓ΘΓʹ ৮ͬͯΈͨײ w TXJGUBTZODBMHPSJUINTΛ͏ͱGPSJOUSZDBUDIͳͲͷ4XJGUΒ͍͠هड़Λ༻͍ͯ ैདྷ$PNCJOFͰߦ͍ͬͯͨΑ͏ͳૢ࡞͕ՄೳͱͳΔ w "TZOD4FRVFODFΛͬͯGPSJOϧʔϓ͢Δͱɺ͕ྲྀΕͯ͘Δ·Ͱػ͢ΔͷͰɺ َ໓ͷਕແݶϧʔϓฤʹಥೖ͢Δ w "TZOD$IBOOFMͷ1VC4VCΈ͕ڧ͍ͷͰɺ$PNCJOFͷ!1VCMJTFEͷΑ͏ͳ
1SPQFSUZ8SBQQFS͕ग़ͯ΄͍͠ w ݱࡏͷͷΞΫηεɺͦͯ͠ೖΛͬͱײతʹ w ࠓճհͯ͠ͳ͍ศརͳ"1*͋Γ·͢
͓ΘΓʂ 4XJGU$PODVSSFODZ $PNCJOFૉਓͳͷͰؒҧͬͯΔ͋ͬͨΒ ڭ͑ͯԼ͍͞ʙ🙌
ࢀߟจݙʙ w IUUQTXXXTXJGUPSHCMPHTXJGUBTZODBMHPSJUINT w IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOTXJGUBTZODTFRVFODF w IUUQTXXXHFUSFWVFDPQSP fi MFE@EBUFJTTVFTTXJGUBTZOD BMHPSJUINT
w IUUQTXXXTMJEFTIBSFOFU[PFUSPQFSFBDUJWFTZTUFNTCBDLQSFTTVSF