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

新人さんでもテストを書くべきだっていう話

 新人さんでもテストを書くべきだっていう話

自分の経験談として、新人さんがテストを書くと割といいですよっていう話をしました。
初心者ほどテスト駆動開発の効果っていうのが高いなーって感じました

NIIKURA Ryota

October 31, 2018
Tweet

More Decks by NIIKURA Ryota

Other Decks in Programming

Transcript

  1. ৽ਓ͞Μʹڭ͑Δͱ͖͸ɺ
    ͪΌΜͱςετ΋ॻ͍ͯ΋Β
    ͓͏ͱ͍͏࿩
    ୈճ1)1ษڧձ!(.0:PVST

    גࣜձࣾχδϘοΫε৽૔ྋଠ
    1

    View Slide

  2. ϫλγ
    2
    /BNF৽૔ྋଠ
    (JUIVCOJJTBOUPLZP
    5XJUUFS!OJJTBOUPLZP
    0UIFS*OGPSNBUJPO
    wχδϘοΫε೥໨
    wΤϯδχΞྺ1)1ྺ೥͘Β͍
    ߨԋཤྺ
    w1)1ΧϯϑΝϨϯεؔ੢
    w1)1ΧϯϑΝϨϯεؔ੢
    w1)1ΧϯϑΝϨϯε

    View Slide

  3. എܠ
    w ݚम΋్தͰ੾Γ্͛ͨɺۀ຿ະܦݧͷ৽ਓ͞Μ͕ࣗ෼
    ͷϓϩδΣΫτʹΤϯδχΞͱͯ͠+PJO͖ͯͨ͠
    w ϓϩδΣΫτ͸-BSBWFMͰ࡞Δ༧ఆͰɺݚमͰ΋࢖͍ͬͯ
    ͨΒ͍͚͠Ͳɺόʔδϣϯ͕ҧ͏ ݚम ϓϩδΣΫ
    τ

    w ͸͡Ίͷ͏ͪ͸ɺϓϩάϥϜͷ࣮ࢪॱʹ΋೰ΜͰ͍ΔϨϕ
    ϧͰ͋ͬͨ
    3

    View Slide

  4. 4

    View Slide

  5. 4
    ཁ͢Δʹ

    View Slide

  6. 4
    ཁ͢Δʹ
    0+5

    View Slide

  7. 4
    ཁ͢Δʹ
    0+5
    ͱ͍͏໊ͷ

    View Slide

  8. 4
    ཁ͢Δʹ
    0+5
    ͱ͍͏໊ͷ
    ࣮ઓ౤ೖ

    View Slide

  9. 4
    ཁ͢Δʹ
    0+5
    ͱ͍͏໊ͷ
    ࣮ઓ౤ೖ
    ͞Εͨ৽ਓ͞Μʹɺςετ·Ͱॻ͔ͤΔͱ͍͏εύϧλΛͨ͠ͱ͖ʹײͨ͡
    ܦݧஊͰ͢

    View Slide

  10. ஫ҙ
    w ͦ΋ͦ΋ࣗಈςετ͕ಋೖ͞Ε͍ͯͳ͍γεςϜΛੈʹग़
    ͢ͷ͸ɺਫ਼ਆӴੜతʹ͖͍ͭͷͰɺࣗ෼͕ܞΘΔϓϩδΣ
    ΫτͰ͸ɺ୭Ͱ͋ΕςετΛॻ͔ͳ͍ͱ͍͚·ͤΜɻ
    w ςετΛॻ͔ͳ͍ͱ͍͚ͳ͍ཧ༝ʹ͍ͭͯ͸ɺ৭ΜͳॴͰ
    ٞ࿦͞Ε͍ͯΔͷͰɺল͖·͢
    5

    View Slide

  11. ະܦݧͷ৽ਓ͞Μ๊͕͑ͯ
    ͍ͨ՝୊Λ೺Ѳͯ͠ΈΔ
    6

    View Slide

  12. 7
    ͦ΋ͦ΋৽ਓͱ͸Ͳ͏͍͏ঢ়ଶͷਓ͔
    ܦݧͱ஌͕ࣝ଍Γͳ͍ͷͰɺ
    ͍͍ײ͡ͷίʔυ͕ॻ͚ͳ͍ɺ
    ΋͘͠͸࣮૷͕ਐ·ͳ͍ঢ়ଶͷਓ

    View Slide

  13. ྫɿϒϩάهࣄ
    w هࣄͷҰཡΛ࡞Γ͍ͨ
    w Ұཡͷ֤هࣄʹ͸هࣄΛॻ͍ͨϢʔβʔ໊͕΄͍͠
    w Ұཡͷ֤هࣄͷίϝϯτ΋Ұॹʹද͍ࣔͨ͠
    w ͦͷίϝϯτʹ΋ίϝϯτΛॻ͍ͨϢʔβʔ໊͕΄͍͠
    8

    View Slide

  14. ྫ͑͹͜Μͳॻ͖ํ
    9

    View Slide

  15. ͜ΕΛॻ͘ͷʹඞཁͳ஌ࣝ
    w ϝιουνΣʔϯ ஌Βͳ͍ͱ͘͢͝ͼͬ͘Γ͢Δ

    w 3FMBUJPOͱ͍͏֓೦ ͜Ε͕ͳ͍ͱϚχϡΞϧʹͨͲΓண͚ͳ͍

    w &MPRVFOUʹ͓͚Δ3FMBUJPO ֮͑Δඞཁ͕͋Δ

    w &BHFSMPBEJOH /໰୊Λ஌͍ͬͯͳ͍ͱͨͲΓண͚ͳ͍͔΋


    View Slide

  16. ͸͡Ί͸ଟ෼͜͏ͳΔ
    11

    View Slide

  17. ৽ਓ͞Μ๊͕͍͑ͯͨ໰୊
    w ஌ࣝͱܦݧ͕ઈରతʹ଍Γͯͳ͍ͷͰɺ͍͍ײ͡ͷίʔυ
    ͕ॻ͚ͳ͍
    w ͔͠͠ͳ͕Βɺۀ຿ʹೖͬͯ͠·ͬͨͷͰɺ඼࣭ͷ୲อΛ
    ͠ͳ͚Ε͹ͳΒͳ͍
    w ԿΛฉ͚͹͍͍ͷ͔Θ͔Βͳ͍ঢ়ଶʹ೰Ή
    w ඼࣭ʹ͍ͭͯ͸ϫλγ΋೰Μͩ
    12

    View Slide

  18. Ͱ͸Ͳ͏͢Ε͹͍͍ͷ͔
    w ͙͢ʹ֮͑ΒΕͦ͏ͳ΋ͷ͔Βॻ͍ͯ΋Β͏͜ͱʹ͢Δ
    w ԿΛॻ͖͍ͨͷ͔Λ໌Β͔ʹͯ͠ɺదٓϖΞϓϩͰҰॹʹ
    ࣮૷ͯ͠ɺ࣮֬ʹ࣮૷ͷܦݧΛੵΜͰ͍ΈΔ
    w ஌͕ࣝ੔͖ͬͯͨΒɺϦϑΝΫλϦϯάΛͯ͠඼࣭Λվળ
    ͯ͠΋Β͏
    13

    View Slide

  19. ͜ΕΒΛղܾ͢Δͱ͍͏
    ؍఺ͰςετΛݟͯΈΔ
    14

    View Slide

  20. ςετͷ໾ׂ
    w ͙͢ʹ֮͑ΒΕͦ͏ͳ΋ͷ͔Βॻ͍ͯ΋Β͏͜ͱʹ͢Δ

    w ԿΛॻ͖͍ͨͷ͔Λ໌Β͔ʹͯ͠ɺదٓϖΞϓϩͰҰॹʹ
    ࣮૷ͯ͠ɺ࣮֬ʹ࣮૷ͷܦݧΛੵΜͰ͍ΈΔ

    w ஌͕ࣝ੔͖ͬͯͨΒɺϦϑΝΫλϦϯάΛͯ͠඼࣭Λվળ
    ͯ͠΋Β͏
    15
    ςετ͸͖ͬͱ͙͢ʹ֮͑ΒΕΔ

    View Slide

  21. ςετͰ֮͑Δ΂͖͜ͱ
    16
    ͓͓ɾɾɾ͜Ε͸֮͑Δ಺༰͕ଟͦ͏͕ͩɾɾɾ

    View Slide

  22. ςετͰ֮͑Δ΂͖͜ͱ
    w ςετͷཧ࿦తഎܠ

    ࠓͷॴ͍Βͳ͍
    w ςετͷ࣮ߦํ๏

    ͬͪ͜Ͱ༻ҙ͓ͯ͘͠WFOEPSCJOQIQVOJU
    w ςετʹ࢖͑Δ๛෋ͳΞαʔγϣϯϝιουͳͲ

    BTTFSU&RVBMTͱ-BSBWFMͷΞαʔγϣϯͷҰ෦Ҏ֎͸஌Βͳ
    ͍͍ͯ͘
    w ςετͷॻ͖ํ

    ͜Ε͚ͩ஌͓͚ͬͯ͹͍͍ʂ
    17

    View Slide

  23. ςετͷجຊܗ
    18
    -BSBWFMͰ୯७ͳܝࣔ൘Λ࡞Δͱ͖ͷςετྫ

    View Slide

  24. ςετͷجຊܗ
    18
    -BSBWFMͰ୯७ͳܝࣔ൘Λ࡞Δͱ͖ͷςετྫ
    ςετͩΑʔͬͯએݴ

    View Slide

  25. ςετͷجຊܗ
    18
    -BSBWFMͰ୯७ͳܝࣔ൘Λ࡞Δͱ͖ͷςετྫ
    ςετͩΑʔͬͯએݴ
    Կͷςετ͔

    View Slide

  26. ςετͷجຊܗ
    18
    -BSBWFMͰ୯७ͳܝࣔ൘Λ࡞Δͱ͖ͷςετྫ
    ςετͩΑʔͬͯએݴ
    Կͷςετ͔
    લఏ৚݅

    View Slide

  27. ςετͷجຊܗ
    18
    -BSBWFMͰ୯७ͳܝࣔ൘Λ࡞Δͱ͖ͷςετྫ
    ςετͩΑʔͬͯએݴ
    Կͷςετ͔
    લఏ৚݅
    ը໘ΞΫηε

    View Slide

  28. ςετͷجຊܗ
    18
    -BSBWFMͰ୯७ͳܝࣔ൘Λ࡞Δͱ͖ͷςετྫ
    ςετͩΑʔͬͯએݴ
    Կͷςετ͔
    લఏ৚݅
    ը໘ΞΫηε
    ͔֬Ί͍ͨ಺༰Λॻ͘

    View Slide

  29. ςετΛॻ͘खॱ
    લఏ৚݅Λ࡞੒͢Δ σʔλϕʔεɺίϯϑΟάʹԾσʔ
    λΛೖΕΔ

    ϦΫΤετΛ౤͛Δ HFU QPTU FUD

    Ϩεϙϯεͷ಺༰͕ظ଴ͨ͠ͱ͓Γ͔ɺ%#ʹظ଴ͨ͠஋
    ͕ೖ͍ͬͯΔ͔ͳͲΛ֬ೝ͢Δ
    جຊతʹ͸͜Εͷ܁Γฦ͠
    19

    View Slide

  30. ςετͰ΍Δ͜ͱ͸
    ܾ·͍ͬͯΔ
    w ࣮ίʔυͰ͸ɺಉ͡Α͏ͳίʔυ͕ग़ݱ͢Δ͜ͱΛ͸͋
    ·Γͳ͍ ͋ͬͯ΋ϦϑΝΫλϦϯά͞ΕΔ
    ͷͰύλʔ
    ϯΛ֮͑Δʹ͸͋Δఔ౓ͷܦݧ͕ඞཁ
    w ҰํͰɺςετͰ΍Δ͜ͱ͸ܾ·͍ͬͯΔͷͰɺԿճ΋ಉ
    ͡Α͏ͳ͜ͱΛॻ͘͜ͱʹͳΓɺ֮͑΍͍͢
    w GBDUPSZ΍ϦΫΤετͷγϛϡϨʔτɺΞαʔγϣϯ
    ΛɺϖΞϓϩͳͲͰҰॹʹॻ͖ͳ͕Βڭ͑Δͱॱ൪Λ֮͑
    ͍ͯ͘ͷͰ͍͍Α͏ʹࢥ͏
    20

    View Slide

  31. ςετͷ໾ׂ
    w ͙͢ʹ֮͑ΒΕͦ͏ͳ΋ͷ͔Βॻ͍ͯ΋Β͏͜ͱʹ͢Δ

    w ԿΛॻ͖͍ͨͷ͔Λ໌Β͔ʹͯ͠ɺదٓϖΞϓϩͰҰॹʹ
    ࣮૷ͯ͠ɺ࣮֬ʹ࣮૷ͷܦݧΛੵΜͰ͍ΈΔ

    w ஌͕ࣝ੔͖ͬͯͨΒɺϦϑΝΫλϦϯάΛͯ͠඼࣭Λվળ
    ͯ͠΋Β͏
    21
    ςετ͸͖ͬͱ͙͢ʹ֮͑ΒΕΔ
    Կ͕ॻ͖͍ͨͷ͔Λςετʹॻ͍ͯ΋Β͏

    View Slide

  32. ͜Μͳঢ়گ
    22
    ࢓༷Λ೺Ѳ͢Δ
    ॲཧΛ࣮૷͢Δ
    ݁ՌΛ͔֬ΊΔ

    View Slide

  33. ͜Μͳঢ়گ
    22
    ࢓༷Λ೺Ѳ͢Δ
    ॲཧΛ࣮૷͢Δ
    ݁ՌΛ͔֬ΊΔ
    ͕͜͜Θ͔Βͳ͍ͷͰ࣮૷͕ਐ·ͳ͍

    View Slide

  34. ͜Μͳঢ়گ
    22
    ࢓༷Λ೺Ѳ͢Δ
    ॲཧΛ࣮૷͢Δ
    ݁ՌΛ͔֬ΊΔ
    ͕͜͜Θ͔Βͳ͍ͷͰ࣮૷͕ਐ·ͳ͍
    ࣮૷͕ਐ·ͳ͍ͷͰ͜͜ʹ౸ୡ͠ͳ͍

    View Slide

  35. ͜͏ͯ͋͛͠Δͱ͍͍
    23
    ࢓༷Λ೺Ѳ͢Δ
    ॲཧΛ࣮૷͢Δ
    ݁ՌΛ͔֬ΊΔ

    View Slide

  36. ͜͏ͯ͋͛͠Δͱ͍͍
    23
    ࢓༷Λ೺Ѳ͢Δ
    ॲཧΛ࣮૷͢Δ
    ݁ՌΛ͔֬ΊΔ
    ઌʹςετΛॻ͍͓͍͔ͯͯ֬Ί͍ͨ݁
    ՌΛৗʹ໌֬ʹ͓ͯ͘͠

    View Slide

  37. ͜͏ͯ͋͛͠Δͱ͍͍
    23
    ࢓༷Λ೺Ѳ͢Δ
    ॲཧΛ࣮૷͢Δ
    ݁ՌΛ͔֬ΊΔ
    ͙͢ʹ͸Ͱ͖ͳ͍ͷͰɺςετʹॻ
    ͍ͨ݁ՌΛ͔֬Ίͳ͕Βɺ
    ͬ͘͡Γ࣮૷ΛਐΊΔ
    ઌʹςετΛॻ͍͓͍͔ͯͯ֬Ί͍ͨ݁
    ՌΛৗʹ໌֬ʹ͓ͯ͘͠

    View Slide

  38. ͱΓ͋͑ͣςετ͸ॻ͚Δ
    24

    View Slide

  39. ͱΓ͋͑ͣςετ͸ॻ͚Δ
    24
    ͱΓ͋͑ͣɺ͜ͷϢʔβʔ͕ग़ͯ
    ͍ͯɺ͜ͷϢʔβʔ͕ग़͍ͯͳ͍ঢ়گ
    ͕΄͍͠Ͱ͢

    View Slide

  40. ͱΓ͋͑ͣςετ͸ॻ͚Δ
    24
    ͓͚ͬʔ
    ΄ΜͳΒ͜Μͳ࣮૷Ͱߦ͚ͦ͏͡Όͳ͍ʁ
    ͱΓ͋͑ͣɺ͜ͷϢʔβʔ͕ग़ͯ
    ͍ͯɺ͜ͷϢʔβʔ͕ग़͍ͯͳ͍ঢ়گ
    ͕΄͍͠Ͱ͢

    View Slide

  41. ͓΍ʁ͜Ε͸ɾɾɾ
    25

    View Slide

  42. ςετۦಈ։ൃ
    w ςετΛઌʹॻ͘͜ͱͰɺ࣮૷͠΍͘͢͢Δख๏
    w ಛผͳํ๏Ͱ͸ͳ͘ɺΉ͠Ζॳ৺ऀͦ͜ɺԸܙͷଟ͍։ൃ
    ख๏Ͱ͋Δͱߟ͍͑ͯΔ
    w ͋Δఔ౓ܦݧΛੵΜͰ͍Δͱɺςετॻ͔ͳͯ͘΋໨ඪʹ
    ޲͚࣮ͨ૷͕εϥεϥॻ͚ΔͷͰɺςετۦಈ։ൃ͕ԯ߷
    ʹײ͡Δ͔΋͠Εͳ͍
    26

    View Slide

  43. ςετͷ໾ׂ
    w ͙͢ʹ֮͑ΒΕͦ͏ͳ΋ͷ͔Βॻ͍ͯ΋Β͏͜ͱʹ͢Δ

    w ԿΛॻ͖͍ͨͷ͔Λ໌Β͔ʹͯ͠ɺదٓϖΞϓϩͰҰॹʹ
    ࣮૷ͯ͠ɺ࣮֬ʹ࣮૷ͷܦݧΛੵΜͰ͍ΈΔ

    w ஌͕ࣝ੔͖ͬͯͨΒɺϦϑΝΫλϦϯάΛͯ͠඼࣭Λվળ
    ͯ͠΋Β͏
    27
    ςετ͸͖ͬͱ͙͢ʹ֮͑ΒΕΔ
    ςετۦಈ։ൃ΋औΓೖΕΔ
    ςετೖ͍ͬͯΕ͹ɺϦϑΝΫλϦϯά͸زΒͰ΋Ͱ͖Δ

    View Slide

  44. ͸͡Ί͜͏ͩͬͨ΋ͷ͕
    28

    View Slide

  45. ͜͏ͳͬͨΒؾ͍͍࣋ͪʂ
    29
    ͍ͭͰʹࣗ෼΋ϋοϐʔ

    ৽ਓ͞Μ΄ͲɺϦϑΝΫλϦϯάΛ࣮ײ͠΍͍͢

    View Slide

  46. 30
    ςετ͕௨͍ͬͯΔ͜ͱΛ࣠ʹͯ͠ɺ࣮૷ͷमਖ਼Λ͢Δ͜ͱ
    ϦϑΝΫλϦϯά

    View Slide

  47. ੒௕࣮ײͱͯ͠ͷ
    ϦϑΝΫλϦϯά
    w ஌ࣝܦݧ͕଍Γͳ͍ঢ়ଶͰ͸ɺίʔυ͕৑௕ͰՄಡੑͷ
    ѱ͍΋ͷʹͳΔ
    w ίʔυΛॻ͘ʹ࿈ΕͯɺԿΛͲ͏͔͚͹͍͍͔Θ͔ͬͯ͘
    Δ
    w ੲॻ͍ͨ৑௕ͳίʔυΛϦϑΝΫλϦϯάͯ͠εοΩϦॻ
    ͚ΔΑ͏ʹͳͬͨ͜ͱΛ࣮ײ͢Δ
    31

    View Slide

  48. ڭ͑Δଆͷ͓ಘ͞
    w ςετΛݟΔ͜ͱͰɺ৽ਓ͞Μͷ࢓༷ͷ೺Ѳ۩߹͕Θ͔Δ
    w ςετ͕ॻ͍ͯ͋ΔͷͰɺՄಡੑͷ௿͍ίʔυͰ΋ɺ಺༰
    ͕͍͋ͬͯΔ͔Ͳ͏͔Θ͔Γ΍͍͢
    w ςετͷࣦഊ͕͋Ε͹ɺϚʔδ͠ͳ͍Α͏ʹ͓ͯ͘͜͠ͱ
    Ͱɺ·͍ͣίʔυ͕ฆΕࠐΉ͜ͱΛ๷͙͜ͱ͕Ͱ͖Δ
    w ϦϑΝΫλϦϯάΛ௨ͯ͠৽ਓ͞Μͷ੒௕۩߹͕Θ͔Δ
    w ςετۦಈ։ൃͷϝϦοτΛ࣮ײͰ͖Δ͔΋͠Εͳ͍
    32

    View Slide

  49. ͱ͍͏Θ͚Ͱ৽ਓ͞Μ͜
    ͦςετॻ͘ͱ͍͍Ͱ͢Αʂ
    33

    View Slide

  50. ڭ͑Δଆ͕
    ؾΛ͚ͭΔ΂͖͜ͱ
    34

    View Slide

  51. ৘ใաଟʹؾΛ͚ͭΔ
    w ৽ਓ͞Μ͸ɺ΄ͱΜͲ஌͕ࣝͳ͍ͷͰɺҰؾʹେྔͷ͜ͱ
    Λڭ͑Δͱɺࠞཚͯ͠ٯޮՌʹؕΓ΍͍͢

    ࣗ෼΋΍ͬͯ͠·͔ͬͨ΋

    w ςετίʔυ͸αϯϓϧͱͳΔΑ͏ͳίʔυྫΛࣔͯ͋͠
    ͛Δͱྑ͍

    ίϐϖͰ࡞ͬͨ΋ͷΛɺςετ಺༰ʹ߹Θͤͯमਖ਼͢Δͩ
    ͚Ͱ΋ɺ݁ߏ֮͑ͪΌ͏
    35

    View Slide

  52. ϨϏϡʔ΍ϖΞϓϩΛ͢Δ
    w ๩͍͠ͱͯ͠΋ɺϨϏϡʔ΍ϖΞϓϩʹ͸ੵۃతʹԠ͡Δ
    ΂͖
    w ϨϏϡʔ͢Δͱ͖͸ɺେྔͷ஌ࣝ΍ܦݧΛඞཁͱ͢ΔՕ
    ॴʹ͍ͭͯ͸͋͑ͯमਖ਼͠ͳ͍ͰɺޙʑͷϦϑΝΫλϦϯ
    άͷ͜ͱ·Ͱߟ͓͑ͯ͘ͱϕλʔ
    w ϖΞϓϩ͢Δͱ͖͸ɺͳͥͦ͏͍͏࣮૷Λ͢Δͷ͔ޱʹग़
    ͠ͳ͕Β΍Δͱ͍͍ͷͰ͸ͱࢥ͏
    36

    View Slide

  53. ϖΞϓϩʹ࢖͏πʔϧ
    37
    ͛͢ʔ͓͢͢Ί

    View Slide

  54. 38
    (JUIVCΞΧ΢ϯτͰϩάΠϯͰ͖ΔͷͰɺ͓खܰͰ͢ʂ

    View Slide

  55. ϨϏϡʔ
    39
    ී௨ʹ(JUIVCͷ13ͱ͔(JU-BCͷ.3ͱ͔࢖͏ͰΑ͍͔ͱ
    $*Ͱςετճͯ͠ɺࣦഊͨ͠
    ΒϚʔδͰ͖ͳ͍Α͏ʹͯ͠
    ͍Δ
    ঎༻γεςϜͰɺສҰͷϛε
    Λͨ͘͠ͳ͍ͱ͖ʹ͸อݥͱ
    ͯ͠ೖΕ͓ͯ͘ͱ͍͍

    View Slide

  56. ·ͱΊ
    w ৽ਓ͞ΜʹςετΛॻ͍ͯ΋Β͏ͱɺ͍͍͜ͱ͕ͨ͘͞Μ
    ͋Δ
    w ֮͑Δ͜ͱ͕ଟ͍தͰ΋ςετ͸ಉ͡Α͏ͳ΋ͷΛ܁Γฦ
    ͠ॻ͘͜ͱʹͳΔͷͰɺ֮͑΍͍͢
    w ςετΛॻ͘͜ͱͰɺ৽ਓͷ੒௕ͱίʔυ඼࣭ͷվળΛ྆
    ཱͤ͞Δ͜ͱ͕Ͱ͖ΔͷͰɺͥͻͱ΋ॻ͍ͯ΋Β͓͏ʂ
    40

    View Slide

  57. 41
    ৽ਓͰ΋ςετΛॻ͔ͳ͚Ε͹ͳΒͳ͍

    View Slide

  58. 41
    ৽ਓͰ΋ςετΛॻ͔ͳ͚Ε͹ͳΒͳ͍

    View Slide

  59. 41
    ৽ਓͰ΋ςετΛॻ͔ͳ͚Ε͹ͳΒͳ͍

    View Slide

  60. 41
    ৽ਓͰ΋ςετΛॻ͔ͳ͚Ε͹ͳΒͳ͍
    ৽ਓ͞Μ͕ςετΛॻ͘ͱɺͱͯ΋͓ಘ

    View Slide

  61. ͝ਗ਼ௌ͋Γ͕ͱ͏͟͝
    ͍·͢ʂ
    42

    View Slide