Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SwiftTask, Repository Pattern and Type Erasure

3b3d987a6065dce3ba2b38dc1e562e94?s=47 akio0911
April 27, 2016

SwiftTask, Repository Pattern and Type Erasure

SwiftTask・リポジトリパターン・型消去の活用

3b3d987a6065dce3ba2b38dc1e562e94?s=128

akio0911

April 27, 2016
Tweet

Transcript

  1. 4XJGU5BTL 3FQPTJUPSZ1BUUFSO BOE5ZQF&SBTVSF )FBMUI4XJGU.FFUVQ !BLJP

  2. 1SPpMF w 4IJOHP4BUP w 5FBDIJOHJ04%FWFMPQNFOU w #MPHHFS w IUUQTUXJUUFSDPNBLJP w

    IUUQTHJUIVCDPNBLJP
  3. .PTBJD$BN 1JDU$IFDL $FMM.FNP %SBX'SBNF 8FJHIU8BUDI

  4. None
  5. "QQ$SFBUPS%PKP w ॳ৺ऀ޲͚ͷΞϓϦߨ࠲ w ೥͔Β֤஍Ͱظ։࠵ w 5PLZP 0TBLB /BHPZB 

    4FOEBJ )JSPTIJNBBOE 'VLVPLB
  6. "HFOEB w 4XJGU5BTL w 3FQPTJUPSZ1BUUFSO w 5ZQF&SBTVSF

  7. 4XJGU5BTL 1SPNJTF QSPHSFTT QBVTF DBODFM SFUSZGPS4XJGU

  8. 6*7JFXBOJNBUJPO"1* IUUQTHJUIVCDPNBLJP4XJGU5BTL&YBNQMF

  9. 6*7JFX"OJNBUJPO
 XJUI$PNQMFUJPO)BOEMFS

  10. Ξχϝʔγϣϯ׬ྃ࣌ʹ࣍ͷΞχϝʔγϣϯΛ։͍࢝ͨ͠

  11. 4XJGU5BTLΛ࢖͏ ΞχϝʔγϣϯλεΫͷܕΛએݴ QBVTFͨ͠λεΫΛSFTVNF͠΍͘͢͢Δ

  12. 4XJGU5BTLΛ࢖͏ Ξχϝʔγϣϯͷ಺༰Λهड़͠ɺ࣮ߦ͢Δ

  13. ΞχϝʔγϣϯλεΫΛ࡞Γ΍͘͢͢Δ 6*7JFXͷFYUFOTJPOͱͯ͠ɺBOJNBUJPO5BTLϝιουΛ༻ҙ͢Δ

  14. ෳ਺ͷΞχϝʔγϣϯΛ࿈࠯ͤ͞Δ

  15. ࿈࠯ͷͨΊͷԋࢉࢠΛ࡞Δ

  16. 4XJGU5BTLΛΞϓϦͰ࢖͏

  17. %BUB.BOBHFSͰ5BTLΛฦ͢

  18. ྫ࿈ܞ֬ೝ͕ऴΘͬͨΒݕࡧ͢Δ

  19. 3FQPTJUPSZ1BUUFSO

  20. 6TFS͔Β͸ ࣮4UPSBHFΛҙࣝ͠ͳͯ͘΋ྑ͍ 6TFS %BUB.BOBHFS %BUB4UPSBHF1SPUPDPM )FBMUI,JU4UPSBHF %BUB4UPSBHF1SPUPDPM 3FBMN4UPSBHF %BUB4UPSBHF1SPUPDPM "VUIPSJ[F

    4UBUVT
  21. ϓϩτίϧΛએݴ IUUQTHJUIVCDPNBLJP3FQPTJUPSZ1BUUFSO&YBNQMF

  22. )FBMUI,JU͸ඇಉظ

  23. 3FBMN͸ಉظ

  24. 4UPSBHFͷ੾Γସ͑Λߦ͏.BOBHFS

  25. ମॏ΢Υον ମॏͷه࿥ɾάϥϑදࣔɾ5PEBZ΢ΟδΣοτͰͷ૿ݮ֬ೝͳͲ

  26. 4VQQPSUTHMBODFBOEDPNQMJDBUJPOT

  27. ϦδΣΫτલͷઃܭ "QQMF8BUDI J1IPOF 0CTFSWFS 2VFSZ /PUJGZ 8BUDI$POOFDUJWJUZ 4BNQMFT 2VFSZ 4BNQMFT

    3FBMN 4BWF -PBE 8BUDI &YUFOTJPO J1IPOF "QQ )FBMUI,JU
  28. 3FKFDUFE

  29. ࢓༷มߋ͢Δ͜ͱʹ w )FBMUI,JUͱͷ࿈ܞΛڐՄ͞ΕͨΒ)FBMUI,JUΛ࢖͏ w ࿈ܞΛڋ൱͞ΕͨΒ3FBMNΛ࢖͏

  30. ࠷ऴઃܭ "QQMF8BUDI J1IPOF 8BUDI$POOFDUJWJUZ 3FBMN 8BUDI &YUFOTJPO J1IPOF "QQ )FBMUI,JU

    3FBMN %BUB.BOBHFS%BUB4UPSBHF1SPUPDPM
  31. 5ZQF&SBTVSF

  32. None
  33. None
  34. None
  35. None
  36. None
  37. None
  38. None
  39. None
  40. None
  41. %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  $
  42. %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 &
  43. 5IBOLZPV GPSZPVSBUUFOUJPO !BLJP