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

ユースケース駆動開発入門 (理論・実践編)

74ec5d7df9b927db48d2309f56cbf914?s=47 s10myk4
March 26, 2018

ユースケース駆動開発入門 (理論・実践編)

社内勉強会のワークショップで使用した資料です

74ec5d7df9b927db48d2309f56cbf914?s=128

s10myk4

March 26, 2018
Tweet

More Decks by s10myk4

Other Decks in Programming

Transcript

  1. Ϣʔεέʔεۦಈ։ൃΛ࣮ફ͢Δ ࣾ಺ษڧձ 2017/10/03 Լଜ๎೭

  2. ΞδΣϯμ • Ϣʔεέʔεۦಈ։ൃͱ͸ʁ • ICONIXͱ͸ʁ • ͳͥϢʔεέʔεۦಈ։ൃ͕ඞཁͳͷ͔ʁ • Ϣʔεέʔεهड़ͷ໾ׂͱ͸ʁ •

    ϩόετωε෼ੳͷ໾ׂͱ͸ʁ • શମͷྲྀΕΛΠϝʔδ͢Δ • ݱঢ়ͷ՝୊ • ·ͱΊ • Ͳ͏΍ͬͯॻ͘ͷʁ ~ೖ໳ฤ~ • Ϣʔεέʔεهड़ • ॻ͖ํ/ϙΠϯτ • ԋश • ϩόετωεਤ • ॻ͖ํ/ϙΠϯτ • ԋश • HaKaSeͰͷ۩ମతͳ࣮ફྫ • ಋೖ͢Δ্Ͱߟ͑Δ͜ͱ ཧ࿦ฤ ࣮ફฤ
  3. ཧ࿦ฤ

  4. Ϣʔεέʔεۦಈ։ൃͱ͸ʁ

  5. ICONIXϓϩηεͱ͸ʁ • ཁٻ • ػೳཁٻ • υϝΠϯϞσϦϯά • ৼΔ෣͍ཁٻ •

    ཁٻϨϏϡʔ • ෼ੳ/༧උઃܭ • ϩόετωε෼ੳ • Ϣʔεέʔεهड़Λߋ৽ / υϝΠϯϞσϧΛߋ৽ • ༧උઃܭϨϏϡʔ • ৄࡉઃܭ • γʔέϯεਤɺ੩తϞσϧߋ৽(Ϋϥεਤ) • ࣮૷ ίʔυ/ςετ
  6. Ϣʔεέʔε͔ΒίʔυΛಋ͘

  7. ༻ޠઆ໌ • ػೳཁٻ • γεςϜ͸~Ͱ͖Δɻ~͢΂͖ɻ • ৼΔ෣͍ཁٻ • ϢʔβʔͱγεςϜͷର࿩

  8. Ϣʔεέʔεهड़Λ࣮ફͯ͠Δਓ ͬͯͲΕ͘Β͍͍·͔͢ʁ

  9. ͲͷΑ͏ͳํ๏Ͱػೳཁٻͷ ৄࡉΛཧղ͍ͯ͠·͔͢ʁ

  10. ݱঢ়ͷ՝୊ • ීஈϦʔμʔ͕ઃܭͷٞ࿦Λओಋ͍ͯͯ͠ɺ൴͕͍ͳ͍ͱಉ͡඼࣭ͷΞ΢τϓο τ͕Ͱ͖ͳ͍ɻ • ઃܭΛϝΠϯͰߟ͑ͯͳ͍ਓ͕࣮૷͢ΔͱϨϏϡʔ͕ߥΕͨΓɺग़໭Γ͕ൃੜ • ػೳཁٻΛ෼ੳͤͣʹ࣮૷ͯ͠ɺཁٻͱҧ͏΋ͷ͕Ͱ͖ͨɻ • ౷߹ςετͰཁ݅࿙Ε/ؒҧ͍ʹؾͮ͘ɻ·ͨ͸ؾ͔ͮͳ͍ɻ

    • ౷߹ςετΛߦ͏λΠϛϯάͰςετέʔεΛॻ͖ى͜͠ɺେٱอ͘Μ͕ඃࡂ ͨ͠ • ͨ·ʹϓϧϦͷϨϏϡʔͰϞσϦϯάͷ࿩ͯͯ͠ɺܰ͘Ԍ্ͯ͠Δ • ৽ਓʹΦϒδΣΫτࢦ޲Λ࣮ફͰ͖ΔΑ͏ʹڭҭ͢Δͷ೉͍͠
  11. ͳͥϢʔεέʔεۦಈ։ൃ͕ඞཁͳͷ͔ʁ • γεςϜͷৼΔ෣͍Λ෼ੳʹΑͬͯ໌֬ʹ͢Δɻ
 • ৄࡉઃܭͷࡍʹɺཁٻͷৄࡉΛཧղ͍ͯ͠ΔͷͰͱ ͯ΋޾ͤʹͳΕΔɻ

  12. ෼ੳΛߦΘͳ͍ͰɺཁٻΛ׬શʹ ཧղ͢Δ͜ͱ͸Ͱ͖ΔͷͩΖ͏͔ʁ

  13. γεςϜ͸ɺ࠾༻ީิऀͷ׆༂ ౓Λ༧ଌͰ͖Δɻ

  14. Ϣʔεέʔεهड़ͷ໾ׂͱ͸ʁ • ػೳཁٻͱઃܭ/࣮૷Λͭͳ͗ɺΑΓ໌ ֬Ͱᐆດͳ෦෼ͷͳ͍ৼΔ෣͍ཁٻ (ϢʔβʔͱγεςϜͷର࿩)ΛಘΔͨΊ ͷखஈ

  15. ϩόετωε෼ੳͷ໾ׂͱ͸ʁ • Ϣʔεέʔεهड़ͷᐆດ͞Λղফ/໌֬ԽΛ αϙʔτ • ݟಀͨ͠υϝΠϯϞσϧͷൃݟΛαϙʔτ

  16. ↓ ԾͷυϝΠϯϞσϧ ↓ GUIϞοΫΞοϓ ↓ ॳ൛ͷϢʔεέʔεهड़ ↓ ଐੑ(ό΢ϯμϦɺΤϯςΟςΟɺίϯτϩʔϥ)Λ໌֬Խ ↓ ϩόετωεਤΛ࡞੒/෼ੳ

    ↓ ෆ໌ྎͳ෦෼ΛͲΜͲΜमਖ਼ Ϣʔεέʔεهड़ͱϩόετωεਤΛҰகͤ͞Δ ↓ ཁٻΛ࣮ݱ͢Δํ๏Λ໌֬Խ / ΦϒδΣΫτϞσϧͱৼΔ෣͍ཁٻ Λؔ࿈෇͚Δ
  17. ·ͱΊ • Ϣʔεέʔεهड़͸ɺػೳཁٻͷৄࡉΛཧղ͢ΔͨΊͷ खஈ • ϩόετωε෼ੳ͸ɺϢʔεέʔεهड़Λચ࿅͢ΔͨΊ ͷπʔϧ • ΦϒδΣΫτΛϢʔεέʔεهड़ʹؔ࿈෇͚Δ͜ͱͰɺ ϢʔεέʔεۦಈͷΦϒδΣΫτࢦ޲ઃܭΛՄೳͱ͢Δ

  18. ࣮ફฤ

  19. Ϣʔεέʔεهड़

  20. ཈͍͑ͨϙΠϯτҰཡ • Ӎͷ೔ͷγφϦΦΛ๨Εͳ͍ • GUIϓϩτλΠϓ΍ɺը໘ϞοΫΞοϓΛ࢖͏΂͠ • Ϣʔεέʔεهड़Λ͢ΔલʹɺυϝΠϯϞσϧΆ໊͍ࢺΛػೳཁ ٻ͔Βநग़͓ͯ͘͠ • ΦϒδΣΫτϞσϧ(υϝΠϯϞσϧɺό΢ϯμϦɺGUIΦϒδΣ

    ΫτͳͲ)ͷݴ༿Λ࢖ͬͯϢʔεέʔεΛॻ͘΂͠ • SVOΛจষߏ଄Λҙࣝͯ͠Ϣʔεέʔεهड़Λ͢΂͠ • ঀड़తʹ
  21. Ӎͷ೔ͷγφϦΦΛ๨Εͳ͍ Կ͔Α͘ͳ͍͜ͱ͕ى͖ͨ৔߹ʹɺγεςϜ ͸Ͳ͏ৼΔ෣͏͔

  22. GUIϓϩτλΠϓɺը໘ϞοΫΞοϓΛ ࢖͏΂͠ • ͩ͜ΘΓ͗͢Δͳ(look & feel) • ϝϦοτ • γεςϜڥք͕໌ࣔ͞Ε͍ͯΔͷͰɺϢʔεέʔεهड़Λ

    ߦ͍΍͍͢ • UIͷό΢ϯμϦɺγεςϜͷΠϕϯτ(xxը໘Λදࣔ͢ Δ)ɺϢʔβʔԠ౴(xxը໘ͷhogeϘλϯΛΫϦοΫ͢Δ) Λଊ͑Δ্ͰޮՌత
  23. Ϣʔεέʔεهड़Λ͢ΔલʹɺυϝΠϯ ϞσϧΆ໊͍ࢺΛػೳཁٻ͔Βநग़ͯ͠ ͓͘ • 2࣌ؒҎ಺ͰαΫοͱ(ͱΓ͋͑ͣͰྑ͍)

  24. ΦϒδΣΫτϞσϧͷݴ༿Λ࢖ͬ ͯϢʔεέʔεΛॻ͘΂͠ • ϢʔεέʔεͱΦϒδΣΫτΛ݁ͼ͚ͭΔ͜ͱͰɺϢʔ εέʔεۦಈͷϞσϦϯάΛ࣮ݱ͢Δ
 
 ΦϒδΣΫτϞσϧͱৼΔ෣͍ཁٻ͕அઈ͢Δͱҙ ຯ͕ͳ͍

  25. SVOจষߏ଄Λҙࣝͯ͠ Ϣʔεέʔεهड़Λ͢΂͠ • ΦϒδΣΫτϞσϧ(υϝΠϯϞσϧɺό΢ϯ μϦͳͲ)΍ɺಈࢺʹ֘౰͢Διϑτ΢ΣΞͷ ػೳΛ໌֬ʹͰ͖Δ • هड़ͷܗࣜΛ౷Ұ

  26. ঀड़తʹ 㱻 ࢦࣔత

  27. ঀड़తʹʁʁ ࢦࣔతʹʁʁ • Ϣʔεέʔεهड़͸ɺγεςϜͷৼΔ෣͍Λঀड़త (~͢Δ)ʹهड़͢Δ • Ϣʔβʔ͸ɺ ~Ͱ͖Δ(ػೳཁٻΈ͍ͨʹ΋ݟ͑Δ)
 × ॏཁͳγεςϜͷৼΔ෣͍͕ӅΕͯ͠·͏

  28. tips1 Ϣʔεέʔεهड़಺ʹҹΛ͚ͭΔ ΤϯςΟςΟ<E> ό΢ϯμϦ<B> ίϯτϩʔϥ<C> ྫ) γεςϜ͸ɺϨϏϡʔ౤ߘը໘<B>Λදࣔ͢Δ<C> γεςϜ͸ɺҿ৯ళϨϏϡʔ<E>Λอଘ͢Δ<C>ɻ ϩόετωεਤ͕هड़͠΍͘͢ͳΔ

  29. tips2 ΠϕϯτͱͦͷԠ౴ͷྲྀΕΛҙࣝ͢Δ • ྫ) γεςϜ͸ɺมଶtwitterΞΧ΢ϯτҰཡը໘Λ දࣔ͢Δɻ • γεςϜ͕Կ͔Λදࣔ͢Δը໘ʹ͋ΔॳظԽͷৼ Δ෣͍ʹؾͮ͘
 •

    ࣗવͱը໘ʹΘ͔Γ΍໊͍͢લ͕෇͘
  30. tips3 ΞΫλʔΛ໌֬ʹೝࣝ͢Δ • ΞΫλʔ͸γεςϜ֎෦ͷଘࡏ • ֎෦γεςϜΛਓͱಉ༷ʹදݱͰ͖Δ • ؅ཧऀͱɺ؅ཧऀΞΧ΢ϯτ͸෼͚ͯߟ͑Δ • ΞΫλʔ͸۩ମతͳ໊લ͕͍͍


    ex. ϢʔβʔΑΓൢചऀͱ͔ߪೖऀͱ͔
  31. Ϣʔεέʔεهड़·ͱΊ • ड़΂ΔͷͰ͸ͳ͘ɺ(खॱΛ)ࣔ͢ɻ
 (ʙͰ͖Δ -> ʙ͢Δ)

  32. ࿅श໰୊1 Ϣʔεέʔεهड़ͯ͠ Ϣʔβʔ͸ɺύεϫʔυΛ࢖ͬͨೝূํ ࣜͰϩάΠϯͰ͖Δɻ

  33. ղ౴ྫ

  34. جຊίʔε: • γεςϜ͸ɺϩάΠϯը໘Λදࣔ͢Δɻ • Ϣʔβʔ͸ɺϝʔϧΞυϨεͱύεϫʔυΛೖྗ͠ϩάΠϯϘλϯΛΫϦο Ϋ͢Δɻ • γεςϜ͸ɺϝʔϧΞυϨεΛݩʹର৅ͷϢʔβʔΞΧ΢ϯτ͕ଘࡏ͢Δ ͔֬ೝ͢Δɻ •

    ଘࡏ͢Δ৔߹͸ϢʔβʔΞΧ΢ϯτΛऔಘ͢Δɻ • γεςϜ͸ɺϢʔβʔΞΧ΢ϯτͷύεϫʔυͱೖྗ͞Εͨύεϫʔυ͕ Ұக͍ͯ͠Δ͔֬ೝ͢Δɻ • γεςϜ͸ɺ֘౰ͷϢʔβʔΞΧ΢ϯτͷೝূͨ͠ηογϣϯΛ։࢝͢Δ • γεςϜ͸ɺXXը໘Λදࣔ͠ɺϩάΠϯʹ੒ޭ͠·ͨ͠ͱϝοηʔδΛ දࣔ͢Δɻ
  35. ୅ସίʔε: • ϢʔβʔΞΧ΢ϯτͷύεϫʔυͱೖྗ͞Εͨύεϫʔ υ͕ෆҰக • γεςϜ͸ɺೖྗ͞Εͨύεϫʔυɺ·ͨ͸ϝʔϧΞυ Ϩε͕ؒҧ͍ͬͯΔ͜ͱΛϩάΠϯը໘ʹදࣔ͢Δɻ • ೖྗ͞ΕͨϝʔϧΞυϨεͷϢʔβʔΞΧ΢ϯτ͕ଘࡏ͠ ͳ͍

    • γεςϜ͸ɺೖྗ͞Εͨύεϫʔυɺ·ͨ͸ϝʔϧΞυ Ϩε͕ؒҧ͍ͬͯΔ͜ͱΛϩάΠϯը໘ʹදࣔ͢Δɻ
  36. ࿅श໰୊2 Ϣʔεέʔεهड़ͯ͠ Ϣʔβʔ͸ɺҿ৯ళϨϏϡʔΛ౤ߘͰ͖ Δɻ

  37. ղ౴ྫ

  38. جຊίʔε: • Ϣʔβʔ͸ɺදࣔ͞Ε͍ͯΔҿ৯ళͷϨϏϡʔϘλϯΛΫϦο Ϋ͢Δɻ • γεςϜ͸ɺϨϏϡʔ౤ߘը໘Λදࣔ͢Δɻ • Ϣʔβʔ͸ɺҿ৯ళධՁΛ5ஈ֊͔Βબ୒͠ɺҿ৯ళϨϏϡʔ ίϝϯτΛೖྗ͠ɺ׬ྃϘλϯΛΫϦοΫ͢Δɻ •

    γεςϜ͸ɺҿ৯ళϨϏϡʔίϝϯτ͕400จࣈҎ಺͔ɺҿ৯ ళධՁ͕બ୒͞Ε͍ͯΔ͔Λ֬ೝ͢Δɻ • γεςϜ͸ɺҿ৯ళϨϏϡʔΛอଘ͢Δɻ • γεςϜ͸ɺҿ৯ళϨϏϡʔ౤ߘ׬ྃը໘Λදࣔ͢Δɻ
  39. ୅ସίʔε: • Ϣʔβʔ͕ϩάΠϯͯ͠ͳ͍ • γεςϜ͸ɺϨϏϡʔ౤ߘը໘͔ΒϦμΠϨΫτͯ͠ϩάΠϯը໘Λදࣔ͢Δ • ϩάΠϯ͕੒ޭͨ͠ΒɺγεςϜ͸ϨϏϡʔ౤ߘը໘Λදࣔ͢Δɻ
 • ҿ৯ళϨϏϡʔίϝϯτ͕400จࣈҎ্ •

    γεςϜ͸ɺҿ৯ళϨϏϡʔ͕400จࣈҎ্Ͱෆਖ਼ͱ͍͏ϝοηʔδΛҿ৯ళ ϨϏϡʔը໘ʹදࣔ͢Δɻ
 • ҿ৯ళධՁ͕બ୒͞Ε͍ͯͳ͍ • γεςϜ͸ɺҿ৯ళධՁ͕ෆਖ਼ͱ͍͏ϝοηʔδΛҿ৯ళϨϏϡʔը໘ʹදࣔ ͢Δɻ
  40. ϩόετωε෼ੳ

  41. None
  42. • Ϣʔεέʔεهड़ΛΦϒδΣΫτʹؔ࿈ͮ ͚Δ • Ϣʔεέʔεهड़ͷᐆດ͞Λղফ͢Δखஈ ϩόετωε෼ੳͱ͸ʁ

  43. None
  44. • Ϣʔεέʔεهड़ͷᐆດ͞ղফΛαϙʔτ ex. ݟಀͨ͠υϝΠϯϞσϧͷൃݟ • ΦϒδΣΫτΛϢʔεέʔεهड़ʹؔ࿈෇ ͚Δ͜ͱͰɺϢʔεέʔεۦಈͷΦϒδΣ Ϋτࢦ޲ઃܭΛՄೳͱ͢Δ ಛ௃

  45. ϩόετωεਤͷߏ଄

  46. ό΢ϯμϦ
 ΦϒδΣΫτ • γεςϜͱ֎෦ͱͷIF • ௨ৗɺը໘΍web ϖʔδ্ͷ֓೦ • ໊ࢺ

  47. ίϯτϩʔϥ • ৼΔ෣͍ • ό΢ϯμϦͱΤϯςΟ ςΟͷؒΛܨ͙֓೦ • ಈࢺ

  48. ΤϯςΟςΟ
 ΦϒδΣΫτ • υϝΠϯྖҬͷ֓೦ • ໊ࢺ

  49. 4ͭͷϧʔϧ

  50. ϧʔϧ 1 ΞΫλʔ͸ό΢ϯμϦΦϒδΣΫτͱ͔ؔ͠ ܎Λ࣋ͯͳ͍

  51. ϧʔϧ 2 ό΢ϯμϦΦϒδΣΫτͱ ΤϯςΟςΟΦϒδΣΫ τ͸ɺ௚઀ؔ܎Λ࣋ͯͳ͍

  52. ϧʔϧ 3 ΤϯςΟςΟ͸ɺ ଞͷΤϯςΟςΟͱ
 ௚઀ؔ܎Λ࣋ͯͳ͍

  53. ϧʔϧ 4 ό΢ϯμϦΦϒδΣΫτ͸ɺ ଞͷό΢ϯμϦΦϒδΣΫτͱ௚઀ؔ܎Λ࣋ͯͳ͍

  54. • Ϣʔεέʔεهड़ͷ݈શੑͷܽ೗Λ ݕ஌ • Ϣʔεέʔεهड़͕SVOͰهड़͞Εͯ ͍Δ͔ • ΦϒδΣΫτͱϢʔεέʔεهड़͕ؔ ࿈෇͚ΒΕ͍ͯΔ͔ ϧʔϧ͕΋ͨΒ͢Ϟϊ

  55. ཈͍͑ͨϙΠϯτ • Ϣʔεέʔεهड़ͱϩόετωεਤΛҰகͤ͞Δ
 (جຊίʔε/୅ସίʔεͷશͯΛࣔ͢) • υϝΠϯϞσϧͷ༻ޠΛར༻ͯ͠Ϣʔεέʔεهड़͕͞ Ε͍ͯΔ͔ • ϩόετωεਤΛඳ͖ͳ͕ΒɺϢʔεέʔεهड़Λߋ৽ ͢Δ

    • ը໘୯ҐͰό΢ϯμϦʹ໌֬ͳ໊લΛ͚ͭΔ • ݟಀͨ͠υϝΠϯϞσϧΛൃݟ/௥Ճ͢Δ
  56. • Ϣʔεέʔε಺Ͱผͷ ϢʔεέʔεΛݺͼग़ ͯ͠΋ྑ͍

  57. HaKaSeνʔϜͰͷ࿩ • ओʹίϚϯυ(ొ࿥ɺߋ৽)ʹؔ͢Δػೳཁٻ ʹ͔͠ϩόετωε෼ੳͯ͠ͳ͍ • Ϗδωε্ɺॏཁͳػೳ͔Βߦ͏


  58. νʔϜͰಋೖ͢ΔͨΊͷઓུ • શͯͷϢʔεέʔεʹରͯ͠ߦΘͳ͍ • ϩόετωεਤୂ௕ΛνʔϜ಺ʹ̍ਓ೚໋ ͢Δ • νʔϜϝϯόʔ͕׳ΕͯདྷͨΒɺॱ൪Ͱॻ ͘Α͏ʹ͢Δ

  59. None
  60. ϩόετωε෼ੳ ·ͱΊ • Ϣʔεέʔεهड़ͷ݈શੑͷ֬ೝ • Ϣʔεέʔεهड़ͷᐆດ͞ղফΛαϙʔτ • ݟಀͨ͠υϝΠϯϞσϧͷൃݟ • 6ճ͘Β͍ॻ͚͹׳ΕΔΑɻ؆୯ɻ

  61. • Ϣʔβʔ͸ɺύεϫʔυΛ࢖ͬͨೝূํࣜͰ ϩάΠϯͰ͖Δɻ
 ͷϢʔεέʔεهड़ΛݩʹϩόετωεਤΛ ॻ͍͍ͯͩ͘͞ɻ ࿅श໰୊ 1 ɹਤΛॻ͍ͯΈΔ

  62. جຊίʔεɿ γεςϜ͸ɺϩάΠϯը໘Λදࣔ͢Δɻ Ϣʔβʔ͸ɺϝʔϧΞυϨεͱύεϫʔυΛೖྗ͠ϩάΠϯϘλϯΛΫϦοΫ͢Δɻ γεςϜ͸ɺϝʔϧΞυϨεΛݩʹର৅ͷϢʔβʔΞΧ΢ϯτ͕ଘࡏ͢Δ͔֬ೝ͢Δɻ ଘࡏ͢Δ৔߹͸ϢʔβʔΞΧ΢ϯτΛऔಘ͢Δɻ γεςϜ͸ɺϢʔβʔΞΧ΢ϯτͷύεϫʔυͱೖྗ͞Εͨύεϫʔυ͕Ұக͍ͯ͠Δ͔֬ೝ͢Δɻ γεςϜ͸ɺ֘౰ͷϢʔβʔΞΧ΢ϯτͷೝূͨ͠ηογϣϯΛ։࢝͢Δɻ γεςϜ͸ɺXXը໘Λදࣔ͠ɺϩάΠϯʹ੒ޭ͠·ͨ͠ͱϝοηʔδΛදࣔ͢Δɻ ୅ସίʔεɿ •

    ϢʔβʔΞΧ΢ϯτͷύεϫʔυͱೖྗ͞Εͨύεϫʔυ͕ෆҰக • γεςϜ͸ɺೖྗ͞Εͨύεϫʔυɺ·ͨ͸ϝʔϧΞυϨε͕ؒҧ͍ͬͯΔ͜ͱΛϩάΠϯը໘ ʹදࣔ͢Δɻ • ೖྗ͞ΕͨϝʔϧΞυϨεͷϢʔβʔΞΧ΢ϯτ͕ଘࡏ͠ͳ͍ • γεςϜ͸ɺೖྗ͞Εͨύεϫʔυɺ·ͨ͸ϝʔϧΞυϨε͕ؒҧ͍ͬͯΔ͜ͱΛϩάΠϯը໘ ʹදࣔ͢Δɻ
  63. 10෼

  64. ղ౴ྫ

  65. • ࿑຿୲౰ऀ͸ɺνʔϜΛొ࿥͢Δ͜ͱ͕Ͱ͖ Δɻ
 ͷϢʔεέʔεهड़ΛݩʹϩόετωεਤΛ ࡞੒͠ɺະ׬੒ͷϢʔεέʔεهड़ͳͲΛߋ ৽͍ͯͩ͘͠͞ɻ ࿅श໰୊ 2 ɹਤΛॻ͍ͯ෼ੳ͢Δ

  66. ࣄલ৘ใ

  67. جຊίʔεɿ invoke → ࿑຿୲౰ऀ͸ɺࣾһΛݕࡧͰ͖Δ ࿑຿୲౰ऀ͸ɺࣾһҰཡ͔ΒϝϯόʔͱϦʔμʔΛબ୒͠ɺ࣍΁Ϙ λϯΛΫϦοΫ͢Δɻ γεςϜ͸ɺਓࣄൃྩ೔ઃఆը໘Λදࣔ͢Δɻ ࿑຿୲౰ऀ͸ɺ֤ϝϯόʔͱϦʔμʔʹൃྩ͞ΕΔ೔Λೖྗ͠ɺOK ϘλϯΛΫϦοΫ͢Δɻ γεςϜ͸ɺνʔϜΛ࡞੒͠ɺอଘ͢Δɻ

    γεςϜ͸ɺ"νʔϜͷొ࿥ʹ੒ޭ͠·ͨ͠"ϝοηʔδΛSnackbarͰ ը໘ʹදࣔ͢Δɻ γεςϜ͸ɺ̑ඵޙνʔϜҰཡը໘Λදࣔ͢Δɻ
  68. ୅ସίʔεɿ • ࿑຿୲౰ऀ͕ϩάΠϯͯ͠ͳ͍
 γεςϜ͸ɺνʔϜొ࿥ը໘͔ΒϦμΠϨΫτͯ͠ϩάΠϯը໘Λදࣔ͢Δɻ
 ϩάΠϯ͕੒ޭͨ͠ΒɺγεςϜ͸νʔϜొ࿥ը໘Λදࣔ͢Δɻ • νʔϜ໊͕ॏෳ
 γεςϜ͸ɺ”ೖྗ͞ΕͨνʔϜ໊͸͢Ͱʹར༻͞Ε͍ͯͯઃఆͰ͖·ͤ Μ”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ •

    νʔϜ໊͕ೖྗ͞Εͯͳ͍
 γεςϜ͸ɺ”νʔϜ໊͸ඞਢೖྗͰ͢”ϝοηʔδΛνʔϜొ࿥ը໘ʹද ࣔ͢Δɻ • Ϧʔμʔ͕બ୒͞Ε͍ͯͳ͍
 γεςϜ͸ɺ”ϦʔμʔΛ1ਓબ୒͍ͯͩ͘͠͞”ϝοηʔδΛνʔϜొ࿥ը ໘ʹදࣔ͢Δɻ
  69. 15෼

  70. ղ౴ྫ

  71. جຊίʔεɿ γεςϜ͸ɺνʔϜొ࿥ը໘Λදࣔ͢Δɻ ࿑຿୲౰ऀ͸ɺνʔϜ໊Λೖྗ͢Δɻ invoke → ࿑຿୲౰ऀ͸ɺࣾһΛݕࡧͰ͖Δ ࿑຿୲౰ऀ͸ɺࣾһҰཡ͔ΒϝϯόʔΛબ୒͢Δɻ ࿑຿୲౰ऀ͸ɺࣾһҰཡ͔ΒϦʔμʔΛબ୒͢Δɻ ࿑຿୲౰ऀ͸ɺ࣍΁ϘλϯΛΫϦοΫ͢Δɻ γεςϜ͸ɺਓࣄൃྩ೔ઃఆը໘Λදࣔ͢Δɻ

    ࿑຿୲౰ऀ͸ɺ֤ϝϯόʔͱϦʔμʔʹਓࣄൃྩ೔Λೖྗ͠ɺOKϘλϯΛΫϦοΫ͢Δɻ γεςϜ͸ɺϝϯόʔ͕2ਓҎ্͔Λ֬ೝ͢Δɻ γεςϜ͸ɺϦʔμʔ͕1ਓͰ͋Δ͔Λ֬ೝ͢Δɻ γεςϜ͸ɺϦʔμʔ͸ɺϝϯόʔʹબ୒͞Ε͍ͯͳ͍͔Λ֬ೝ͢Δɻ γεςϜ͸ɺνʔϜΛ࡞੒͠ɺอଘ͢Δɻ γεςϜ͸ɺ"νʔϜͷొ࿥ʹ੒ޭ͠·ͨ͠"ϝοηʔδΛSnackbarͰը໘ʹදࣔ͢Δɻ γεςϜ͸ɺ̑ඵޙνʔϜҰཡը໘Λදࣔ͢Δɻ
  72. ୅ସίʔεɿ • ࿑຿୲౰ऀ͕ϩάΠϯͯ͠ͳ͍
 γεςϜ͸ɺνʔϜొ࿥ը໘͔ΒϦμΠϨΫτͯ͠ϩάΠϯը໘Λදࣔ͢Δɻ
 ϩάΠϯ͕੒ޭͨ͠ΒɺγεςϜ͸νʔϜొ࿥ը໘Λදࣔ͢Δɻ • νʔϜ໊͕ॏෳ
 γεςϜ͸ɺ”ೖྗ͞ΕͨνʔϜ໊͸͢Ͱʹར༻͞Ε͍ͯͯઃఆͰ͖·ͤΜ”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • νʔϜ໊͕ೖྗ͞Εͯͳ͍


    γεςϜ͸ɺ”νʔϜ໊͸ඞਢೖྗͰ͢”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • Ϧʔμʔ͕બ୒͞Ε͍ͯͳ͍
 γεςϜ͸ɺ”ϦʔμʔΛ1ਓબ୒͍ͯͩ͘͠͞”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • ϝϯόʔ͕બ୒͞Ε͍ͯͳ͍
 γεςϜ͸ɺ”ϝϯόʔΛ2ਓҎ্બ୒͍ͯͩ͘͠͞”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • ϝϯόʔʹબ୒͞Εͨਓ͕ɺϦʔμʔʹ΋બ୒͞Ε͍ͯΔ
 γεςϜ͸ɺ”ϝϯόʔʹબ୒͞ΕͨਓΛϦʔμʔʹબ୒Ͱ͖·ͤΜ”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • Ϧʔμʔ͕2ਓҎ্
 γεςϜ͸ɺ”νʔϜ಺ʹϦʔμʔ͸1ਓ͔͠ଘࡏͰ͖·ͤΜ”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • ϝϯόʔ͕2ਓະຬ
 γεςϜ͸ɺ”νʔϜʹ͸ϝϯόʔ͕2ਓҎ্ଘࡏ͢Δඞཁ͕͋Γ·͢”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ • ϝϯόʔ or Ϧʔμʔͷਓࣄൃྩ೔͕ೖྗ͞Ε͍ͯͳ͍
 γεςϜ͸ɺ”ਓࣄൃྩ೔͸ඞਢೖྗͰ͢”ϝοηʔδΛνʔϜొ࿥ը໘ʹදࣔ͢Δɻ