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
SwiftTask, Repository Pattern and Type Erasure
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
akio0911
April 27, 2016
Programming
7.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SwiftTask, Repository Pattern and Type Erasure
SwiftTask・リポジトリパターン・型消去の活用
akio0911
April 27, 2016
More Decks by akio0911
See All by akio0911
Type wrappers : shibuya.swift #4
akio0911
0
540
体重ウォッチにおけるRealmとSwiftTaskの活用
akio0911
6
1.9k
WatchKitにおける iPhone Appとのデータ共有
akio0911
1
4k
Other Decks in Programming
See All in Programming
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
160
関数型プログラミングのメリットって何だろう?
wanko_it
0
170
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
120
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
550
20260623_Loop Engineeringで自分の分身の問い合わせBotを作る
ryugen04
0
210
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.4k
共通化で考えるべきは、実装より公開する型だった
codeegg
0
220
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
170
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
120
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
220
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.4k
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
For a Future-Friendly Web
brad_frost
183
10k
The Curious Case for Waylosing
cassininazir
1
430
Faster Mobile Websites
deanohume
310
32k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
710
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
390
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
260
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Design in an AI World
tapps
1
260
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Transcript
4XJGU5BTL 3FQPTJUPSZ1BUUFSO BOE5ZQF&SBTVSF )FBMUI4XJGU.FFUVQ !BLJP
1SPpMF w 4IJOHP4BUP w 5FBDIJOHJ04%FWFMPQNFOU w #MPHHFS w IUUQTUXJUUFSDPNBLJP w
IUUQTHJUIVCDPNBLJP
.PTBJD$BN 1JDU$IFDL $FMM.FNP %SBX'SBNF 8FJHIU8BUDI
None
"QQ$SFBUPS%PKP w ॳ৺ऀ͚ͷΞϓϦߨ࠲ w ͔Β֤Ͱظ։࠵ w 5PLZP 0TBLB /BHPZB
4FOEBJ )JSPTIJNBBOE 'VLVPLB
"HFOEB w 4XJGU5BTL w 3FQPTJUPSZ1BUUFSO w 5ZQF&SBTVSF
4XJGU5BTL 1SPNJTF QSPHSFTT QBVTF DBODFM SFUSZGPS4XJGU
6*7JFXBOJNBUJPO"1* IUUQTHJUIVCDPNBLJP4XJGU5BTL&YBNQMF
6*7JFX"OJNBUJPO XJUI$PNQMFUJPO)BOEMFS
Ξχϝʔγϣϯྃ࣌ʹ࣍ͷΞχϝʔγϣϯΛ։͍࢝ͨ͠
4XJGU5BTLΛ͏ ΞχϝʔγϣϯλεΫͷܕΛએݴ QBVTFͨ͠λεΫΛSFTVNF͘͢͢͠Δ
4XJGU5BTLΛ͏ Ξχϝʔγϣϯͷ༰Λهड़͠ɺ࣮ߦ͢Δ
ΞχϝʔγϣϯλεΫΛ࡞Γ͘͢͢Δ 6*7JFXͷFYUFOTJPOͱͯ͠ɺBOJNBUJPO5BTLϝιουΛ༻ҙ͢Δ
ෳͷΞχϝʔγϣϯΛ࿈ͤ͞Δ
࿈ͷͨΊͷԋࢉࢠΛ࡞Δ
4XJGU5BTLΛΞϓϦͰ͏
%BUB.BOBHFSͰ5BTLΛฦ͢
ྫ࿈ܞ֬ೝ͕ऴΘͬͨΒݕࡧ͢Δ
3FQPTJUPSZ1BUUFSO
6TFS͔Β ࣮4UPSBHFΛҙࣝ͠ͳͯ͘ྑ͍ 6TFS %BUB.BOBHFS %BUB4UPSBHF1SPUPDPM )FBMUI,JU4UPSBHF %BUB4UPSBHF1SPUPDPM 3FBMN4UPSBHF %BUB4UPSBHF1SPUPDPM "VUIPSJ[F
4UBUVT
ϓϩτίϧΛએݴ IUUQTHJUIVCDPNBLJP3FQPTJUPSZ1BUUFSO&YBNQMF
)FBMUI,JUඇಉظ
3FBMNಉظ
4UPSBHFͷΓସ͑Λߦ͏.BOBHFS
ମॏΥον ମॏͷهɾάϥϑදࣔɾ5PEBZΟδΣοτͰͷ૿ݮ֬ೝͳͲ
4VQQPSUTHMBODFBOEDPNQMJDBUJPOT
ϦδΣΫτલͷઃܭ "QQMF8BUDI J1IPOF 0CTFSWFS 2VFSZ /PUJGZ 8BUDI$POOFDUJWJUZ 4BNQMFT 2VFSZ 4BNQMFT
3FBMN 4BWF -PBE 8BUDI &YUFOTJPO J1IPOF "QQ )FBMUI,JU
3FKFDUFE
༷มߋ͢Δ͜ͱʹ w )FBMUI,JUͱͷ࿈ܞΛڐՄ͞ΕͨΒ)FBMUI,JUΛ͏ w ࿈ܞΛڋ൱͞ΕͨΒ3FBMNΛ͏
࠷ऴઃܭ "QQMF8BUDI J1IPOF 8BUDI$POOFDUJWJUZ 3FBMN 8BUDI &YUFOTJPO J1IPOF "QQ )FBMUI,JU
3FBMN %BUB.BOBHFS%BUB4UPSBHF1SPUPDPM
5ZQF&SBTVSF
None
None
None
None
None
None
None
None
None
%BUB4UPSBHF5ZQF BTTPDJBUFEUZQF%PNBJO 3FBMN1FSTPO4UPSBHF UZQFBMJBT%PNBJO1FSTPO pOE"MM 5BTL <1FSTPO> TBWF QFSTPO1FSTPO
5BTL pOE"MM 5BTL <%PNBJO> TBWF QFSTPO%PNBJO 5BTL 3FBMN1MBDF4UPSBHF UZQFBMJBT%PNBJO1MBDF pOE"MM 5BTL <1MBDF> TBWF QFSTPO1MBDF 5BTL $
%BUB4UPSBHF8SBQQFS%PNBJO5ZQF UZQFBMJBT%PNBJO%PNBJO5ZQF 3FBMN1FSTPO4UPSBHF UZQFBMJBT%PNBJO1FSTPO pOE"MM 5BTL <1FSTPO> TBWF QFSTPO1FSTPO
5BTL pOE"MM 5BTL <%PNBJO> TBWF QFSTPO%PNBJO 5BTL "1*1FSTPO4UPSBHF UZQFBMJBT%PNBJO1FSTPO pOE"MM 5BTL <1FSTPO> TBWF QFSTPO1FSTPO 5BTL %BUB4UPSBHF8SBQQFS1FSTPO UZQFBMJBT%PNBJO1FSTPO pOE"MM 5BTL <1FSTPO> TBWF QFSTPO1FSTPO 5BTL %PNBJO5ZQF1FSTPO &
5IBOLZPV GPSZPVSBUUFOUJPO !BLJP