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

PropertyObserverとinoutでやらかした話

r-plus
March 23, 2017

 PropertyObserverとinoutでやらかした話

potatotips #38 slide

r-plus

March 23, 2017
Tweet

More Decks by r-plus

Other Decks in Technology

Transcript

  1. 1SPQFSUZ0CTFSWFSͱ
    JOPVUͰ΍Β͔ͨ͠࿩
    QPUBUPUJQT
    [email protected]

    View Slide

  2. ۨ৔େथ [email protected]

    )"/%4-"#*/$

    View Slide

  3. )BOET104

    View Slide

  4. ೥9EBZ

    View Slide

  5. ͱ͋ΔରԠͰ3Y4XJGUͷ
    EJTUJODU6OUJM$IBOHFE
    Λ֎ͨ͠όʔδϣϯΛϦϦʔε

    View Slide

  6. ϦϦʔε೔ͷ$SBTIঢ়گ

    View Slide

  7. ϦϦʔε೔ͷ$SBTIঢ়گ

    View Slide

  8. ໌Β͔ʹແݶϧʔϓ

    View Slide

  9. ແݶϧʔϓίʔυ
    UPUBM"NPVOU0CTFSWBCMFͰߦ͍ͬͯͨ
    EJTUJODU6OUJM$IBOHFE
    Λফͨ͠ͱ͜Ζൃੜ

    View Slide

  10. ແݶϧʔϓίʔυ
    ॾ৚݅Λຬͨͨ͠ΒUSBOTBDUJPOͷ৘ใΛ
    <4USJOH"OZ>ʹม׵ͯ͠ૹ৴͢Δॲཧ
    ม׵ʹ͸0CKFDU.BQQFSͷUP+40/Λར༻

    View Slide

  11. )FBSTU%%0CKFDU.BQQFS

    View Slide

  12. .BQQBCMFϓϩτίϧʹద߹ͤ͞NBQQJOHΛॻ͍͓ͯ͘ͱ
    *OTUBODFˠUP+40/ɺGSPN+40/ˠJOTUBODF
    ͷ྆ํ͕ग़དྷΔศརͳϠπ

    View Slide

  13. 0CKFDU.BQQFSಠࣗΦϖϨʔλ

    View Slide

  14. Ұͭͷهड़ͰUP+40/ GSPN+40/
    ͷ྆ํʹରԠͤ͞ΔͨΊʹɺ࣮૷ʹ
    ͸JOPVU͕ར༻͞Ε͍ͯΔ
    public func (left: inout T, right: Map)

    View Slide

  15. JOPVU

    View Slide

  16. $ͷϙΠϯλ౉͠
    ͷΑ͏ͳ΋ͷ

    View Slide

  17. ϙΠϯλΛ͍͡Βͳ͚Ε͹
    Կ΋ى͖ͳ͍ͩΖ͏

    View Slide

  18. ϙΠϯλΛ͍͡Βͳ͚Ε͹
    Կ΋ى͖ͳ͍ͩΖ͏
    /P❌

    View Slide

  19. View Slide

  20. ࣮ߦ݁Ռɿ
    OBNFTFUUPB
    OBNFTFUUPB

    View Slide

  21. OBNFͷϓϩύςΟΦϒβʔόʔ͸
    zBzΛ୅ೖͨ࣌͠ͱ
    TPNFͷϝιουऴྃޙ
    ͷ߹ܭճ࣮ߦ͞ΕΔ

    View Slide

  22. JOPVUΛ࣮ݱ͢ΔͨΊʹ
    ϝιουऴྃޙʹॻ͖໭͕͠ൃੜ͢Δ

    View Slide

  23. ͭ·Γ0CKFDU.BQQFSͰ
    ΠϯελϯεΛ+40/ʹม׵͢Δͱ
    ݩΦϒδΣΫτͷ֤ϓϩύςΟʢϚοϐϯ
    άର৅ʹͨ͠΋ͷʣͷTFUUFS͕Α͹ΕΔ

    View Slide

  24. ແݶϧʔϓίʔυ
    0CKFDU.BQQFSͷ+40/ม׵͕࣮ߦ͞Ε
    JOPVUʹΑͬͯ஋͸มΘͬͯͳ͍͚ΕͲϓ
    ϩύςΟʹ୅ೖ͞Ε
    0CTFSWBCMFʹγάφϧ͕ඈΜͰ͘Δ
    ҎԼϧʔϓ

    View Slide

  25. ·ͱΊ
    ϓϩύςΟͷ0CTFSWFS
    ʢ4XJGUͷ1SPQFSUZ0CTFSWFS 0CKDͷ,70౳ʣ
    Ͱߦ͏ॲཧͷهड़Ͱ
    JOPVUͷϝιουΛར༻͢Δ࣌͸஫ҙ͠·͠ΐ͏ɻ

    View Slide

  26. ͪͳΈʹ
    IUUQTHJUIVCDPN3FBDUJWF,JU#POECMPCW#POE$PSF&WFOU1SPEVDFSTXJGU-
    3Y4XJGUҠߦલʹར༻͍ͯͨ͠
    3FBDUJWF,JU#POE
    Ͱ͸ɺ0CTFSWFS࣮ߦதͷγάφϧΛΨʔυ͍ͯ͠·ͨ͠

    View Slide

  27. ͓ΘΓɻ

    View Slide