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

MVVMデザインパターンを既存のプロジェクトに適用するまで

touyou
May 28, 2016

 MVVMデザインパターンを既存のプロジェクトに適用するまで

touyou

May 28, 2016
Tweet

More Decks by touyou

Other Decks in Technology

Transcript

  1. .77.σβΠϯύλʔϯΛ
    طଘͷϓϩδΣΫτʹద༻͢Δ·Ͱ
    ˜UPVZPV

    View Slide

  2. ͪΐͬͱ͚ͩ४උ͓ئ͍͠·͢
    HJUDMPOFIUUQTHJUIVCDPN3FBDUJWF93Y4XJGUHJU

    View Slide

  3. ࠓճͷͻͱ·ͣͷΰʔϧ͸
    ංେԽ͢Δ7JFX$POUSPMMFSΛ
    ͳΜͱ͔͠Α͏ʂͱ͍͏΋ͷ

    View Slide

  4. 8IBU`T.77.

    View Slide

  5. .PEFM7JFX7JFX.PEFM

    View Slide

  6. .PEFM7JFX7JFX.PEFM

    View Slide

  7. .PEFM7JFX7JFX.PEFM

    View Slide

  8. .PEFM7JFX7JFX.PEFM
    .PEFM 7JFX.PEFM 7JFX

    View Slide

  9. .PEFM7JFX7JFX.PEFM
    .PEFM 7JFX.PEFM 7JFX
    ؒ઀తͳؔ܎
    ௚઀తͳؔ܎

    View Slide

  10. .PEFM7JFX7JFX.PEFM
    σʔλόΠϯσΟϯά
    .PEFM 7JFX.PEFM 7JFX

    View Slide

  11. .PEFM7JFX7JFX.PEFM
    දࣔ΍දࣔͷϩδοΫ
    .PEFM 7JFX.PEFM 7JFX

    View Slide

  12. .PEFM7JFX7JFX.PEFM
    σʔλͱϩδοΫ
    .PEFM 7JFX.PEFM 7JFX

    View Slide

  13. .PEFM7JFX7JFX.PEFM
    .PEFM 7JFX.PEFM 7JFX
    ͱɺ8JLJQFEJBઌੜ͕ݴ͍ͬͯͨ

    View Slide

  14. .PEFM7JFX7JFX.PEFM
    .PEFM 7JFX.PEFM 7JFX
    Α͘Θ͔Βͳ͍ͷͰ
    ΋͏গ͠ৄ͘͠ಡΜͰΈΑ͏

    View Slide

  15. .PEFMͱ͸
    w ΞϓϦέʔγϣϯͷυϝΠϯΛ୲͏
    w ͱ͍ͬͯ΋͜ΕͰ͸Ͳ͏͍͏໾ׂ͔Θ͔Βͳ͍
    w ͱΓ͋͑ͣඳըʹؔΘΒͳ͍7JFXͱ7JFX.PEFMҎ֎ͷ෦෼

    View Slide

  16. 7JFXͱ͸
    w ΞϓϦέʔγϣϯͷѻ͏σʔλΛ

    ɹɹɹɹɹϢʔβʔʹݟΔͷʹదͨ͠ܗͰදࣔ
    w ϢʔβʔͷೖྗΛड͚औΔ
    w 7JFXͦͷ΋ͷʹ͸ෳࡶͳϩδοΫ͸࣋ͨͳ͍

    View Slide

  17. 7JFX.PEFMͱ͸
    w 7JFXΛඳը͢ΔͨΊͷঢ়ଶͷอ࣋
    w 7JFX͔Βड͚औͬͨೖྗΛద੾ͳܗͰ.PEFMʹ఻ୡ͢Δ
    w 7JFX.PEFMͷมߋ͸։ൃऀ͔Βݟͯ7JFXʹࣗಈతʹ൓ө͞ΕΔ

    View Slide

  18. ͱΓ͋͑ͣ໾ׂ෼୲͸Θ͔ͬͨ

    View Slide

  19. ͕ɺ͔͠͠

    View Slide

  20. J1IPOFͳ͍΍Μ

    View Slide

  21. Ͳ͏͢Δʁ

    View Slide

  22. ஫໨
    ˢίί

    View Slide

  23. σʔλόΠϯσΟϯάػߏͷΑ͏ͳ
    ࢓૊ΈΛ֦ு͢Ε͹͍͍

    View Slide

  24. ͦ͜Ͱʜ

    View Slide

  25. 3Y4XJGUΛ࢖͓͏ʂ
    3FBDUJWF1SPHSBNNJOHͰ-FU`T.77.

    View Slide

  26. 3FBDUJWF1SPHSBNNJOHͬͯʁ

    View Slide

  27. IUUQQPTUEDDXIBUJTGVODUJPOBMSFBDUJWFQSPHSBNNJOH
    IUUQOJOKJOLVOIBUFOBCMPHDPNFOUSZJOUSPSYKB

    View Slide

  28. ֓೦͕೉͍͠ͷͰলུʂ
    N @@
    N

    View Slide

  29. ͱʹ͔͘3FBDUJWF1SPHSBNNJOHͰ
    σʔλόΠϯσΟϯάػߏͬΆ͍࢓૊Έ
    Λͭ͘ΕΔ

    View Slide

  30. 3Y4XJGUΛ࢖͏ͱ
    3FBDUJWF1SPHSBNNJOH͕ग़དྷΔʂ

    View Slide

  31. -FUT3Y4XJGU

    View Slide

  32. 3Y4XJGUΛֶͿ

    View Slide

  33. 1MBZHSPVOEΛ࢖͓͏ʂ

    View Slide

  34. ·ͣ͸ެࣜϦϙδτϦΛDMPOF
    HJUDMPOFIUUQTHJUIVCDPN3FBDUJWF93Y4XJGUHJU

    View Slide

  35. 3YYDXPSLTQBDFΛ։͜͏

    View Slide

  36. 3Y4XJGU049ΛϏϧυʢ㵰#ʣ

    View Slide

  37. &EJUPSΛ֬ೝͯ͠ϞʔυΛม͑Α͏
    /( 0,

    View Slide

  38. ࢦࣔʹ͕ͨͬͯ͠ਐΊΑ͏ʂ

    View Slide

  39. ӳޠ͕೉͍͠ʁ

    View Slide

  40. λί͞Μϒϩά3Y4XJGUೖ໳ͦͷ̍ʙͦͷ̒
    IUUQUJOZXJOHIBUFOBCMPHDPNFOUSZ
    ೔ຊޠ༁݉ิ଍ɺ͋Γ·͢ʂ

    View Slide

  41. ؔ਺ͷڍಈͱ͔͸Θ͔ͬͨ

    View Slide

  42. Ͱɺ࣮ࡍͲ͏࢖͏ͷʁ

    View Slide

  43. αϯϓϧΛݟΑ͏ʂ
    $BTF
    3Y4XJGUYDXPSLTQBDFͷ
    3Y&YBNQMF3Y&YBNQMF&YBNQMFT
    ͷίʔυͱ3Y&YBNQMFJ04ͷ

    ࣮ߦ݁ՌΛরΒ͠߹ΘͤΔ

    View Slide

  44. αϯϓϧΛݟΑ͏ʂ
    $BTF
    ࣮ࡍͷ.77.ͷద༻ͷ࢓ํ͸
    IUUQTHJUIVCDPNNBGNP⒎3Y%SJWF344'FFE
    ͷίʔυ͕Φεεϝʂ

    View Slide

  45. ద༻ͯ͠ΈΑ͏ʂ
    *NBHFOJVTͰ.77.CZ3Y4XJGUΛऔΓೖΕͯΈͨ

    View Slide

  46. TUFQ
    3Y4XJGUΛಋೖͰ͖Δ෦෼Λߟ͑Δ

    View Slide


  47. w จষೖྗͷจࣈ਺Χ΢ϯλʔͷ෦෼
    w 5BCMF7JFX΍$PMMFDUJPO7JFXΛ࢖͏ͱ͜Ζ
    w ϘλϯΛ͓ͨ࣌͠ͷॲཧ

    View Slide

  48. TUFQ
    ಋೖ͢Δํ๏Λߟ͑Δ

    View Slide

  49. w ؆୯ͳͱ͜ΖˠαϯϓϧʹͳΒ͏
    w .77.ˠͲ͜·Ͱ͕7JFXͰͲ͜·Ͱ͕7JFX.PEFMͰ.PEFMͳͷ͔

    View Slide

  50. TUFQ
    ͕Μ͹Δ

    View Slide

  51. 0OFNPSFUIJOHʜ

    View Slide

  52. ਖ਼௚ɺ.77.೉͍͠

    View Slide

  53. ΋ͬͱ؆୯ʹ
    ࣅͨ͜ͱͰ͖ͳ͍ͷʁ

    View Slide

  54. ͋ͬͨ

    View Slide

  55. 3F4XJGU

    View Slide

  56. 3F4XJGU
    w 3FEVYͱ͍͏+BWB4DSJQUͷϥΠϒϥϦΛ࠶ݱͨ͠΋ͷ
    w ΞϓϦͷઃܭΛʮঢ়ଶɺΞΫγϣϯɺॲཧʯʹ෼͚Δ
    w .77.ΑΓང͔ʹཧղ͠΍͍֓͢೦

    View Slide

  57. σσϯ

    View Slide

  58. View Slide

  59. ৄ͘͠͸3&"%.&Ͱ
    ೔ຊޠ༁΋ͪΐ͍ͪΐ͍͍ͯ͠·͢ʂ
    IUUQTHJUIVCDPNUPVZPV3F4XJGU+1

    View Slide

  60. [email protected]
    3F4XJGUͱ3Y4XJGUɺͲ͔ͬͪยํʹߜΓ͍ͨʜ

    View Slide

  61. 5IBOLTGPSMJTUFOJOHʜ

    View Slide

  62. 3Y4XJGUͷαϯϓϧΛΈͯΈΑ͏
    w 3Y&YBNQMFJ04Λ࣮ߦ͢Δ
    w 3Y&YBNQMF3Y&YBNQMF௚Լʹ͋ΔίʔυΛݟΔ

    View Slide