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
implementation_for_promise_using_nested_generics
Search
hirose yudai
April 28, 2017
1
930
implementation_for_promise_using_nested_generics
Swift愛好会
#18の登壇内容です
Promiseを実装して見たらこういう風に実装できるね
という流れを説明した資料になります
hirose yudai
April 28, 2017
Tweet
Share
More Decks by hirose yudai
See All by hirose yudai
Write swift macros
bannzai
1
300
Figma => SwiftUI
bannzai
0
210
爆速でクソリプを送る技術
bannzai
1
72
Tsukimi
bannzai
0
89
iOSDC_Reject_Conference_Day1
bannzai
0
260
iOSDC-2019.pdf
bannzai
0
1.5k
ios-de-kanpai
bannzai
0
85
waiwai-swiftc.pdf
bannzai
0
170
iosdcrc-conv.pdf
bannzai
4
630
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
97
We Have a Design System, Now What?
morganepeng
54
8k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Site-Speed That Sticks
csswizardry
13
1k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
200
Ruling the World: When Life Gets Gamed
codingconduct
0
120
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
150
Exploring anti-patterns in Rails
aemeredith
2
230
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
99
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
230
How to build a perfect <img>
jonoalderson
1
4.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.5k
Transcript
4XJGUѪձ 4XJGU OFTUFEHFOFSJDTͰ1SPNJTFΛ࣮ͯ͠ΈΑ͏
"HFOEB ࣗݾհ લஔ͖ ޤ৯λΠϜ ຊฤ 1SPNJTF࣮͍͔ͯ͘͠ ͓·͚
ࣗݾհ ໊લኍ༤େ ৬छJ04&OHJOFFS Α͘ษڧձͰࣗ࡞044ʹ͍ͭͯ ͯ͠·͢ɻ໊͍ͭͨ͋ͩ4UBSޤ৯ Ͱ͢ɻ4UBS͍ͩ͘͞ɻ HJUIVCIUUQHJUIVCDPNCBOO[BJ
ޤ৯λΠϜ IUUQTHJUIVCDPNCBOO[BJ,VSJ ,VSJ͍ͬͯ͏ϥΠϒϥϦͷWFSTJPO Λެ։ͨ͠ͷͰҰॠ͚ͩσϞ ͦͬͱελʔ͍ͩ͘͞
ͦΕͰ͓·͚ͱͯ͠
/FTUFEHFOFSJDTΛ༻ͯ͠
1SPNJTF࣮͍͖͠·͠ΐ͏
࣮͢Δલʹ /FTUFEHFOFSJDTͱ 1SPNJTFͱʁ ҙࣄ߲
࣮͢Δલʹ /FTUFEHFOFSJDTͱ 1SPNJTFͱʁ ҙࣄ߲
/FTUFEHFOFSJDTͱ 4XJGU͔Βͷػೳ OFTUͨ͠UZQF DMBTT TUSVDU FOVN ʹ (FOFSJDTΛOFTUͯ͠ద༻Ͱ͖Δ ৄࡉͪ͜ΒIUUQT XXXIBDLJOHXJUITXJGUDPNTXJGU
None
࣮͢Δલʹ /FTUFEHFOFSJDTͱ 1SPNJTFͱʁ ҙࣄ߲
1SPNJTFͱʁ ฒߦॲཧɾඇಉظॲཧΛΑΓ؆୯ʹ͔͚Δ σβΠϯύλʔϯͷҰͭͰ͢ Ұͭ՝Λఏࣔͯͦ͠ΕΛྫʹͯ͠આ໌͠·͢ ৄࡉA1SPNJTF'VUVSFAͰάά͍ͬͯͩ͘͞
ղܾ͍ͨ͠՝ J04ΞϓϦ։ൃͰαʔόʔͱͷ௨৴Λෳߦ ͏߹ʹεοΩϦॻ͖͍ͨ
None
None
None
None
None
None
None
None
1SPNJTFͰ࣮ݱ͍ͨ͜͠ͱ ՝ J04ΞϓϦ։ൃͰαʔόʔͱͷ௨৴Λෳߦ ͏߹ʹεοΩϦॻ͖͍ͨ ˠϝιουνΣΠϯͰ͔͋ͨಉظతʹ࣮ߦ ͍ͯ͠ΔΑ͏ʹॻ͘͜ͱͰՄಡੑΛ͋͛Δ
1SPNJTFͰ࣮ݱ͍ͨ͜͠ͱ ՝ J04ΞϓϦ։ൃͰαʔόʔͱͷ௨৴Λෳߦ ͏߹ʹεοΩϦॻ͖͍ͨ ˠϝιουνΣΠϯͰ͔͋ͨಉظతʹ࣮ߦ ͍ͯ͠ΔΑ͏ʹॻ͘͜ͱͰՄಡੑΛ͋͛Δ
࣮͢Δલʹ /FTUFEHFOFSJDTͱ 1SPNJTFͱʁ ҙࣄ߲
ҙࣄ߲ 1SPNJTF -JLF ͷϥΠϒϥϦ৭ʑͱ͋Γ· ͢ɻ ࠓ͔Β࣮͢Δͷ؆қతͰػೳ͕গͳ͍ ͷΛ࣮͍ͯ͘͠ͷͰɺ͜ͷஊٛͰհ͢Δ ͷ1SPNJTFͷҰ෦ͷಛͱ͍͏͜ͱΛ಄ʹ ஔ͍͓͍͍ͯͯͩ͘͞
None
·ͣҰͭͷྲྀΕ͔Β
ϝιουνΣΠϯΛ࣮ݱ͠Α͏
͜͏͢ΕͰ͖Δ
1SPNJTFͱ͍͏֓೦ΛՃͯ͠
$MPTVSFΛҾʹͱͬͯ 1SPNJTFΛฦͤ
ͱΓ͋͑ͣܨ͍Ͱ͔͚ͨ
ͱΓ͋͑ͣܨ͍Ͱ͔͚ͨ
$MPTVSFʹҾ͕͋Δ
(FOFSJDTʹΑΓ ҾͷܕΛܾΊΔ
࣮ࡍʹΛग़ྗ͍ͨ͠
ϓϩύςΟͰอ࣋ͯ͠
Λͯ͠$MPTVSFΛ࣮ߦ
None
͔͠͠ɺ͜ͷ··ͩͱ Τϥʔͷ࣮࣌ߦͰ͖ͯ͠·͏
ޭͷ࣌ݺΔ
ͳΜ͔ࣄނΓͦ͏
ͲͪΒ͔͚࣮ͩߦ͍ͨ͠
Կ࣮ߦ͞Εͨ͘ͳ͍
None
ͱΓ͋͑ͣࠓ͕ Ͳ͏͍͏ঢ়ଶ͔อ͍࣋ͨ͠
GN
͜ΕͰ͍͚ͦ͏
͏Ұݸ$MPTVSFͰแΜͰ͋͛Δ K K K
SFTPMWFEͷ͚࣮࣌ͩߦ K K K
ͲͪΒ͔͕࣮ߦ͞ΕͨΒྻΛফ͢ K
Ұ࣮ߦͨ͠ޙʹશͯফͯ͠͠·͏ K
࣮ߦ
Α͠
͜ΕͰ͍͍Μ͚ͩͲ
ϦϑΝΫλϦϯά͠Α͏
͕͍͚ͯ͜͜ͳ͍ K
ͦ͜Ͱ
Α͏͓͘લͷग़൪ͩ
ʊਓਓਓਓਓਓਓਓਓʊ ʼɹ/FTUFE(FOFSJDTɹʻ ʉ:?:?:?:?:?:?:?:ʉ
ͷ(FOFSJDTॻ͘
͖ͭ&OVNʹอ࣋
ແཧͳ͘औΓग़ͤΔ
(FOFSJD$BDIF YED DZDMJDNFUBEBUBEFQFOEFODZ EFUFDUFE BCPSUJOH
͋ͱ॥ࢀর͍ͯ͠ΔͷͰXFBLʹ
࣮ߦ
None
ࠓճ͜͜·Ͱ ͪΐͬͱࢿྉ࡞Δ࣌ؒஊٛͷ࣌ؒΓͳ͔ͬͨͷͰࠓճ͜͜ ͰऴΘΒ͍͖ͤͯͨͩ·͢ ΩϞͷ෦આ໌ͨ͠ͷͰޙ AUIFOAϝιουͱ࣮ࡍʹ63-4FTTJPOΛͬͯͲ͏ॻ͚Δ͔Λݴ͑ ͨΒΑ͔ͬͨͳ͋ͱࢥ͍ͬͯ·͢ આ໌͢Δ༧ఆͩͬͨίʔυ(JU)VCʹ্͍͛ͯΔͷͰΑ͔ͬͨΒͦ ͪΒΛݟ͍ͯͩ͘͞ IUUQTHJUIVCDPNCBOO[BJ1SPNJTF%FNP
·ͱΊ OFTUFEHFOFSJDTͷ͍ํͷҰྫͱͯ͠ൃද͠·ͨ͠ɻ ·ͨɺ1SPNJTFͷ෦తͳಈ࡞Λগ͠Ͱ૾͢͠ ͘ͳͬͨͷͰͳ͍Ͱ͠ΐ͏͔ ͱʹ͔͘ͷϦϙδτϦશ෦ʹશͯ4UBS͍ͩ͘͞ IUUQHJUIVCDPNCBOO[BJ
͓͠·͍