$30 off During Our Annual Pro Sale. View Details »

キャッシュによる状態管理のアーキテクチャ / Cache-based state management architecture

rockname
September 12, 2022

キャッシュによる状態管理のアーキテクチャ / Cache-based state management architecture

rockname

September 12, 2022
Tweet

More Decks by rockname

Other Decks in Programming

Transcript

  1. ΩϟογϡʹΑΔ 
 ঢ়ଶ؅ཧͷΞʔΩςΫνϟ ؠ໊༐ً!SPDLOBNF J04%$

  2.  4NBSU#BOL *OD J04"OESPJE"QQMJDBUJPO%FWFMPQFS ؠ໊༐ًϩΫωϜ !@SPDLOBNF ࣗݾ঺հ !SPDLOBNF

  3.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w 8FCϑϩϯτΤϯυΛத৺ʹ޿͕ͬͨΩϟογϡʹΑΔঢ়ଶ؅ཧ ͱ͍͏ߟ͑ํʹڵຯ͕͋Δ w J04ΞϓϦʹ͓͚Δঢ়ଶ؅ཧͷΞʔΩςΫνϟબఆʹ೰ΜͰ͍Δ PS೰Μͩ͜ͱ͕͋Δ ૝ఆ͢Δฉ͖ख

  4.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ  ঢ়ଶ؅ཧख๏ͷબఆج४  ·ͱΊ

    "HFOEB
  5. ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ

  6.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w ྫ͑͹ɺҰൠతͳ4/4ΞϓϦͷҰཡৄࡉը໘ʹ͓͚Δঢ়ଶ؅ཧʹ͍ͭͯߟ͑ͯΈ·͠ΐ͏ w ৄࡉը໘Ͱ͍͍ͶϘλϯΛλοϓͨ͠ࡍʹɺҰཡը໘ʹ͋Δಉ͡౤ߘ΋͍͍ͶࡁΈͰ͋Δඞཁ͕͋Γ·͢ Ұཡৄࡉը໘ؒͰͷঢ়ଶ؅ཧ

  7.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w ୯७ͳղܾࡦͱͯ͠͸ɺৄࡉը໘Ͱͷ͍͍ͶϘλϯͷΠϕϯτΛҰཡը໘΁఻೻͢Δํ๏͕ߟ͑ΒΕ·͢ w ͜ΕͰlͻͱ·ͣ͸zҰཡը໘ͱৄࡉը໘Ͱঢ়ଶΛಉظ͢Δ͜ͱ͕Ͱ͖͍ͯ·͢ Ұཡৄࡉը໘ؒͰͷঢ়ଶ؅ཧ

  8.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w ͔͠͠ɺଞͷλϒʹ͋ΔಉҰͷ౤ߘʹ͍ͭͯ͸Ͳ͏Ͱ͠ΐ͏͔ɺ౰વ͍͍Ͷ͸൓ө͞Ε͍ͯ·ͤΜ w ͜͜ͰɺҰཡৄࡉը໘ؒͰͷঢ়ଶ؅ཧͰ্͛ͨΑ͏ͳɺΠϕϯτͷ఻೻ʹΑΔঢ়ଶͷಉظΛࢼΈ·͢ λϒΛ௒͑ͨঢ়ଶ؅ཧ

  9.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w ਤΛݟͯ໌Β͔ͳ௨ΓɺΠϕϯτͷ఻೻͕ը໘ͷ૊Έ߹Θͤ෼ൃੜ͠ɺҰؾʹෳࡶ౓͕૿͠·͢ w ͜ͷΑ͏ʹΠϕϯτۦಈͰ֤ը໘ʹอ࣋͞Εͨঢ়ଶͷಉظΛਤΔͷ͸ࢸ೉ͷۀͰɺσʔλͷෆ੔߹ʹΑΔ όάͷൃੜΛট͖͔Ͷ·ͤΜ λϒΛ௒͑ͨঢ়ଶ؅ཧ

  10.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w σʔλͷෆ੔߹Λ๷͙ͨΊʹ͸ɺಉظΛඞཁͱ͢Δঢ়ଶΛ֤ը໘Ͱݸผʹ؅ཧ͢ΔͷͰ͸ͳ͘ɺ(MPCBM4UBUFͱͯ͠ٵ্͍֤͛ͯ ը໘΁఻೻ͤ͞ΔΑ͏ʹ͢Δͷ͕ྑ͍ղܾࡦͰ͢ w ͜ͷΑ͏ʹɺ৴པͰ͖Δ།Ұͷ৘ใݯ 4JOHMF4PVSDFPG5SVUI Λங͘͜ͱ͕੔߹ੑͷऔΕͨঢ়ଶΛҡ্͍࣋ͯ͘͠Ͱ͸ॏཁͰ͢ w

    ͔͠͠ɺྫ͑͹͜ͷ(MPCBM4UBUFΛඞཁͱ͢Δը໘͕͔ͳΓωετͷਂ͍7JFX֊૚ʹҐஔ͍ͯͨ͠৔߹ɺ਌͔Βࢠ΁όέπϦ ϨʔͰ(MPCBM4UBUFΛ఻೻͍ͤͯ͘͞ඞཁ͕͋Γɺίʔυ͕ෳࡶԽ͍͖ͯ͠·͢ w ͜ͷΑ͏ͳཧ༝͔Βɺঢ়ଶ؅ཧʹ͓͍ͯద੾ͳΞʔΩςΫνϟͷબఆ͕ඞཁͱͳ͖ͬͯ·͢ 4JOHMF4PVSDFPG5SVUI
  11.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w 3FEVY͸ɺ4JOHMF4PVSDFPG5SVUIʹଇͬͯ(MPCBM4UBUFΛݎ࿚ʹ؅ཧ͢ΔΞʔΩςΫνϟͱͯ͠༗໊ͳ+BWB4DSJQUͷϥΠϒϥϦͰ͢ w ֤Πϕϯτ͸"DUJPOͱͯ͠EJTQBUDI͞Εɺ3FEVDFS͕"DUJPOʹԠͯ͡୯Ұͷ4UPSFͰ؅ཧ͞ΕΔ(MPCBM4UBUFΛߋ৽͢ΔΑ͏ʹͳ͍ͬͯ ·͢ w ਤͷΑ͏ʹσʔλͷྲྀΕ͕୯ํ޲ʹͳΔ͜ͱͰɺ6*ͱঢ়ଶΛ෼཭͠ɺঢ়ଶߋ৽ͷϩδοΫΛ؅ཧ͠΍͘͢ͳΓ·͢ w

    ೥ʹొ৔ͨ͠3FEVY͸ɺ(MPCBM4UBUFͷ؅ཧʹർฐ͍ͯͨ͠౰࣌ͷ8FCϑϩϯτΤϯυ։ൃʹ͓͍ͯɺ޿͘࠾༻͞ΕΔΑ͏ʹͳͬͯ ͍͖·ͨ͠ 3FEVYʹΑΔ(MPCBM4UBUFͷ؅ཧ
  12.  ঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑ w ౰ॳ͸ͦͷચ࿅͞ΕͨΞʔΩςΫνϟσβΠϯ͔Βਓʑ͸ͧͬͯ͜3FEVYΛ࠾༻͠·͕ͨ͠ɺ͕࣌ܦͭʹͭΕ͍ͯ ͔ͭ͘ͷ՝୊͕ݟ͖͑ͯ·ͨ͠ w ·ͣɺγϯϓϧͳཁ݅ͷΞϓϦʹ͓͍ͯ3FEVY͸΍΍ΦʔόʔΩϧͳΞʔΩςΫνϟͰͨ͠ w ຊདྷͰ͋Ε͹খ͘͞ରԠͰ͖ΔΑ͏ͳػೳ΋ɺ3FEVYͷཁ͢Δଟ͘ͷϘΠϥʔϓϨʔτ͸։ൃͷ޻਺Λ૿େͤ͞ ·ͨ͠

    w ·ͨɺେ͖ͳن໛ͷΞϓϦʹ͓͍ͯ΋ɺଟ͘ͷҟͳΔछྨͷ4UBUF͕୯Ұͷ4UPSFʹ٧Ίࠐ·ΕΔ͜ͱʹΑͬͯɺ ੔߹ੑͷऔΕͨ(MPCBM4UBUFΛ؅ཧ͍ͯ͘͠ͷ͕೉͘͠ͳ͍͖ͬͯɺ։ൃ଎౓ΛಷԽͤ͞ΔཁҼͱͳ͍ͬͯ·ͨ͠ 3FEVYͷ՝୊
  13. ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ

  14.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w ΞϓϦ։ൃʹ͓͍ͯ؅ཧ͢΂͖ঢ়ଶʹ͍ͭͯվΊͯ੔ཧͯ͠ΈΔͱɺͦͷେ൒͸αʔόʔ͔Βऔಘ ͢ΔσʔλͰ͋Δ͜ͱʹؾ͕͖ͭ·͢ w ͨͩͷ"1*ϨεϙϯεͰ͋Δαʔόʔσʔλͷঢ়ଶ؅ཧʹ3FEVYͷΑ͏ͳΞʔΩςΫνϟΛ༻͍Δͷ ͸΍΍ա৒Ͱ͋Δͱ͍͏ߟ͔͑Βɺ3FBDU2VFSZ΍483ͷΑ͏ͳʮΩϟογϡʹΑΔঢ়ଶ؅ཧʯͷ ػೳΛఏڙ͢ΔϑϨʔϜϫʔΫ͕࣍ୈʹ୆಄͍͖ͯ͠·ͨ͠ ΩϟογϡʹΑΔঢ়ଶ؅ཧख๏ͷ୆಄

  15.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w 3FRDU2VFSZ 5BO4UBDL2VFSZ ͸ΩϟογϡʹΑΔঢ়ଶ؅ཧͷػೳΛఏڙ͢Δ3FBDUͷϥΠϒϥϦͰ͢ w σʔλऔಘॲཧΛXSBQͯ͠ɺͦͷঢ়ଶ͓ΑͼσʔλͷΩϟογϡ؅ཧΛΑ͠ͳʹऔΓѻ͏ػೳΛఏڙ͍ͯ͠·͢ w ֤σʔλऔಘϦΫΤετ

    2VFSZ ୯ҐͰɺରԠ͢ΔσʔλΛΩϟογϡʹอଘ͠·͢ w 7JFX͸ΩϟογϡΛ؂ࢹ͠ɺมߋ͕͋ͬͨ৔߹ʹը໘Λ࠶ϨϯμϦϯά͠·͢ 3FBDU2VFSZ
  16.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w ྫ͑͹7JFX"Ͱද͍ࣔͯ͠Δσʔλ͕ݹ͘ͳ͓ͬͯΓɺ7JFX#Ͱಉ͡σʔλΛऔಘ͢Δ2VFSZΛ౤͛ͯ࠷৽ ͷσʔλΛऔಘͰ͖ͨ৔߹ʹɺ7JFX"͸ͦͷ࠷৽ͷσʔλ͕Ωϟογϡ͔Β఻೻͞Εͯ࠶ϨϯμϦϯά͞Ε ·͢ 3FBDU2VFSZ

  17.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w ·ͨɺ1045΍%&-&5&ͱ͍ͬͨॻ͖ࠐΈ .VUBUJPO Λཁ͢ΔϦΫΤετʹ͍ͭͯ͸ɺ.VUBUJPOޙʹؔ࿈͢ΔΩϟογϡΛ JOWBMJEBUF͢Δ͜ͱͰɺσʔλͷ࠶औಘΛߦ͍ɺ࠷৽ͷঢ়ଶΛอͪ·͢ w ྫ͑͹ɺ7JFX#ͰϢʔβʔ৘ใߋ৽ͷ.VUBUJPO͕ൃੜͨ͠৔߹ʹɺ7JFX"Ͱද͍ࣔͯ͠ΔϢʔβʔ৘ใ΋ߋ৽͢΂͘ɺ 


    Ϣʔβʔ৘ใऔಘ2VFSZʹରԠ͢ΔΩϟογϡΛJOWBMJEBUF͠·͢ 3FBDU2VFSZ
  18. #ΛςʔϚͱ࣮ͨ͠૷ྫ

  19. None
  20. 7JTBϓϦϖΠυΧʔυʹνϟʔδͯ͠ ࢧ෷͏ͱࢧग़͕ϦΞϧλΠϜʹՄࢹԽ͞Εͯ ʮ͋ͱ͍͘Β࢖͑Δʯ͕ͻͱ໨Ͱ෼͔Δ ͓ޓ͍ͷࢧ෷͍͸શͯ νϟʔδΛͨ͠ڞಉ࢒ߴ͔ΒҾ͖མͱ͞ΕΔͷͰ ύʔτφʔͱ;ͨΓͷڞಉՈܭ؅ཧΛ࣮ݱ

  21.  #ͱ͸ w #ΧʔυͰܾࡁΛߦ͏ͱɺΞϓϦ্ͷϗʔϜλϒʹ ͋ΔλΠϜϥΠϯʹଈ࣌൓ө͞Ε·͢ w ͜ͷλΠϜϥΠϯʹ͸ɺࢧग़ΧςΰϦΛࣔ͢ΞΠίϯ ͱళ໊ ܾࡁֹ͕ۚදࣔ͞ΕͨΞΠςϜ͕Ұཡ͞Ε·͢ w

    ΞΠςϜΛλοϓ͢Δͱৄࡉը໘΁ભҠ͠ɺࢧग़Χς ΰϦͷมߋͳͲ͕Մೳͱͳ͍ͬͯ·͢
  22.  #ͱ͸ w ݄·ͱΊλϒͰ͸֤݄ʹ͓͚Δࢧग़ΧςΰϦ͝ͱ ͷܾࡁֹ͕ۚҰ໨ͰΘ͔ΔΑ͏ʹͳ͍ͬͯ·͢ w ྫ͑͹ϗʔϜλϒͷλΠϜϥΠϯ͔Βৄࡉը໘΁ ભҠͯ͠ࢧग़ΧςΰϦΛมߋͨ͠৔߹ɺ݄·ͱΊ λϒͷࢧग़ΧςΰϦ͝ͱͷܾࡁֹۚ΋ߋ৽͞Εͯ ͍Δඞཁ͕͋Γ·͢

  23.  #ΛςʔϚͱ࣮ͨ͠૷ͷํ਑ w ࠓճ͸͜ͷ#ΛςʔϚʹɺ3FBDU2VFSZͷΑ͏ͳϦΫΤετ୯ҐͷΩϟογϡʹΑΔঢ়ଶ؅ཧͷ ΞʔΩςΫνϟͷ࣮૷ྫΛ͝঺հ͠·͢ w J04ΞϓϦ։ൃʹ͓͍ͯ͸3FBDU2VFSZͷΑ͏ͳελϯμʔυͳϥΠϒϥϦ͸ଘࡏ͠ͳ͍ͨΊɺ 
 ϦϙδτϦύλʔϯΛ༻͍࣮ͨ૷ํ๏Λ࠾༻͠·͢ w

    ϦϙδτϦύλʔϯͱ͸ɺ8FC"1*΍σʔλϕʔεͷΑ͏ͳ֤σʔλιʔε΁ͷΞΫηεٴͼͦΕʹ෇ ਵ͢Δσʔλૢ࡞ͷॲཧΛΧϓηϧԽ͢ΔσβΠϯύλʔϯͰ͢
  24.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ·ͣ͸ɺϗʔϜͷλΠϜϥΠϯΛΠϯϝϞϦͰΩϟογϡ͢Δ*O.FNPSZ)PNF5JNFMJOF$BDIF4UPSFΛ࡞੒͠·͢ w ࠓճ͸؆୯ͷͨΊʹγϯάϧτϯύλʔϯΛར༻ͯ͠ΠϯϝϞϦΩϟογϡΛΞϓϦέʔγϣϯશମͰڞ༗Ͱ͖ΔΑ ͏ʹ࣮૷͍ͯ͠·͢ w λΠϜϥΠϯͷมߋΛ؂ࢹͰ͖ΔΑ͏ʹ͢΂͘ɺ"OZ1VCMJTIFS5JNFMJOF /FWFSͱͯ͠ެ։͠·͢

  25.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ࣍ʹɺ)PNF5JNFMJOF3FQPTJUPSZΛ࡞੒͠ɺλΠϜϥΠϯΛαʔόʔ͔Βऔಘͯ͠Ωϟογϡʹอଘ͢Δ GFUDI5JNFMJOFϝιουΛ௥Ճ͠·͢ ؆୯ͷͨΊʹϖʔδωʔγϣϯ౳ͷ࣮૷͸ׂѪ͠·͢  w ͦͯ͠ɺ"OZ1VCMJTIFS5JNFMJOF /FWFSܕͷUJNFMJOFQSPQFSUZΛએݴ͠ɺ

    *O.FNPSZ)PNF5JNFMJOF$BDIF4UPSFͷอ࣋͢ΔλΠϜϥΠϯΛฦ͢Α͏ʹ͠·͢
  26.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ϗʔϜλϒͷ6*ଆͰ͸ɺ)PNF5JNFMJOF3FQPTJUPSZͷ UJNFMJOFQSPQFSUZ௨ͯ͠λΠϜϥΠϯͷΩϟογϡΛ؂ ࢹ͠·͢ w ը໘දࣔ࣌ʹ)PNF5JNFMJOF3FQPTJUPSZGFUDI5JNFMJOF Λݺͼग़͢Α͏ʹͯ͠ɺ࠷৽ঢ়ଶͷλΠϜϥΠϯ͕දࣔ ͞ΕΔΑ͏ʹ͠·͢

  27.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ͜͜·ͰͰɺϗʔϜλϒʹλΠϜϥΠϯΛදࣔ͢Δ ͱ͜Ζ·Ͱ࣮૷Ͱ͖·ͨ͠

  28.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ݄·ͱΊλϒʹ͍ͭͯ΋ɺϗʔϜλϒͱಉ༷ʹ$BDIF4UPSF ͓Αͼ3FQPTJUPSZΛ࣮૷͠ɺ6*ଆ͔Β؂ࢹͯ͋͛͠·͢

  29.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ͜͜ͰɺϗʔϜλϒͷλΠϜϥΠϯ͔Βৄࡉը໘΁ભҠ͠ɺࢧग़ ΧςΰϦΛมߋͨ͠ͱ͠·͢ w ݄·ͱΊλϒͷΧςΰϦ͝ͱͷܾࡁֹۚΛ࠷৽ͷঢ়ଶʹߋ৽͢Δ ͨΊʹ.POUIMZ4VNNBSZ3FQPTJUPSZGFUDI.POUIMZ4VNNBSZ Λݺͼग़ͯ͋͛͠·͠ΐ͏ w

    ݄·ͱΊͷΩϟογϡ͕ߋ৽͞ΕɺͦΕΛ؂ࢹ͍ͯ͠Δ݄·ͱΊ λϒ΁σʔλ͕఻ൖ͞Εɺ࠷৽ঢ়ଶ΁ߋ৽͞Ε·͢
  30.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ৄࡉը໘Ͱͷࢧग़ΧςΰϦมߋʹ൐͍ɺϗʔϜͷλΠϜϥΠϯ΋࠷৽ঢ়ଶʹߋ৽͢Δඞཁ͕͋Γ·͢ w ͔͠͠ɺλΠϜϥΠϯ͸ϖʔδϯά৘ใΛ൐͏ͨΊɺ҆қʹλΠϜϥΠϯશମΛ࠶औಘ͢ΔΘ͚ʹ͸͍͖·ͤΜ w ͦ͜Ͱɺࢧग़ΧςΰϦͷมߋ͞ΕͨΞΠςϜͷΈΛߋ৽͢Δ͜ͱΛߟ͑·͢ w ·ͣ͸ɺ*O.FNPSZ)PNF5JNFMJOF$BDIF4UPSFʹλΠϜϥΠϯͷΩϟογϡʹΞΠςϜΛ্ॻ͖ͯ͠อଘ͢ΔॲཧΛ௥Ճ

    ͠·͢
  31.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ࣍ʹɺ)PNF5JNFMJOF3FQPTJUPSZʹɺλΠϜϥΠϯશମͰ͸ͳ͘ҰͭͷΞΠςϜͷΈΛαʔόʔ͔Βऔಘͯ͠ ΩϟογϡΛߋ৽͢ΔϝιουΛ࣮૷͠·͢

  32.  #ΛςʔϚͱ࣮ͨ͠૷ྫ w ͋ͱ͸݄·ͱΊλϒͷߋ৽ͱಉ༷ʹɺࢧग़ΧςΰϦมߋ ࣌ʹ)PNF5JNFMJOF3FQPTJUPSZGFUDI5JNFMJOF*UFN JE Λݺͼग़ͯ͠ϗʔϜͷλΠϜϥΠϯʹදࣔ͞Ε͍ͯΔ֘౰ ΞΠςϜͷΈΛߋ৽͠·͢ w ͜ΕʹΑΓɺϖʔδωʔγϣϯͷϖʔδϯά৘ใΛϦ

    ηοτ͢Δ͜ͱͳ͘ɺ࠷খݶͷϦΫΤετ਺Ͱ৘ใΛ࠷ ৽ʹอͭ͜ͱ͕Ͱ͖·͢
  33.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w 3FBDU2VFSZͷΑ͏ͳϦΫΤετ୯ҐͷΩϟογϡʹ΋ɺ՝୊͸ଘࡏ͠·͢ w ྫ͑͹4/4ΞϓϦͷΑ͏ʹɺ౤ߘ΍ϢʔβʔͷΑ͏ͳ֤ΦϒδΣΫτ͕ਂ͘ωετ͞Εͨσʔλߏ଄Λ͍࣋ͬͯͯɺͦΕͧΕ͕ଟ͘ͷ ը໘Ͱදࣔ͞Ε͏ΔέʔεΛ૝ఆͯ͠Έ·͠ΐ͏ w ౤ߘ΁ͷ͍͍Ͷ΍Ϣʔβʔ໊มߋ౳ʹΑΔ.VUBUJPOΛൃੜͤͨ͞৔߹ʹɺؔ࿈͢Δ౤ߘ͢΂ͯΛద੾ʹߋ৽͢Δͱ͍͏ઓུ͸ɺߟྀ࿙ Εͳ͘׬શʹ࣮ߦ͢Δ͜ͱ͕೉͘͠ɺ͋·Γݱ࣮తͰ͸ͳ͍͜ͱ͕૝૾Ͱ͖·͢

    w ͜ͷΑ͏ʹɺϦΫΤετ୯ҐͷΩϟογϡʹ͓͚Δ.VUBUJPOʹ൐͏ؔ࿈σʔλͷ࠶औಘͱ͍͏ઓུ͚ͩͰ͸ɺσʔλͷ੔߹ੑΛҡ࣋͢ Δ͜ͱ͕೉͘͠ͳͬͯ͘Δέʔε͕ଘࡏ͠·͢ ϦΫΤετ୯ҐͷΩϟογϡʹ͓͚Δ՝୊
  34.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w ͜ͷ՝୊Λղܾ͢ΔͨΊʹ͸ɺؔ࿈σʔλϕʔεͷΑ͏ʹΩϟογϡͷσʔλΛਖ਼نԽͯ͋͛͠Δඞཁ͕͋Γ·͢ w Ωϟογϡͷਖ਼نԽͱ͸ɺαʔόʔ͔Βऔಘͨ͠σʔλΛݸผͷΦϒδΣΫτ΁෼ׂ͠ɺ֤ΦϒδΣΫτ΁࿦ཧతʹҰҙͳࣝผࢠΛ෇༩ ͠ɺϑϥοτͳσʔλߏ଄Ͱ֨ೲ͢Δ͜ͱΛࢦ͠·͢ w ͜ΕʹΑΓɺྫ͑͹ઌ΄ͲͷྫͷΑ͏ͳ4/4ΞϓϦʹ͓͚Δέʔε΋ɺΩϟογϡ͕ద੾ʹਖ਼نԽ͞Ε͍ͯΕ͹ɺΘ͟Θؔ͟࿈͢Δ ΩϟογϡΛखଓతʹ࠶औಘ͍ͯ͘͠ඞཁ͸͋Γ·ͤΜ

    w ॏෳͳ͘ਖ਼نԽ͞Ε֤ͨ౤ߘ ϢʔβʔͷΩϟογϡʹର͢ΔมߋΛ6*ଆ͔Β؂ࢹ͢Δ͜ͱͰɺؔ࿈͢Δ6*ͷΈ͕ద੾ʹࠩ෼ߋ৽͞Ε͍ͯ ͖·͢ ਖ਼نԽ͞ΕͨΩϟογϡ
  35.  ਖ਼نԽ͞ΕͨΩϟογϡ w ਖ਼نԽ͞ΕͨΩϟογϡ͸ɺ"QPMMP΍3FMBZͷΑ͏ͳ(SBQI2-ͷΫϥΠΞϯτϥΠϒϥϦͰঢ়ଶ؅ཧͷػೳͱͯ͠ ఏڙ͞Ε͍ͯ·͢ w ܕͷ͋Δάϥϑߏ଄ͷεΩʔϚΛఏڙ͢Δ(SBQI2-ͱ૬ੑͷྑ͍ػೳͱͳ͍ͬͯ·͢

  36. NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ

  37.  NBTUPEPOͱ͸ w NBTUPEPOͱ͸ɺ5XJUUFSͷΑ͏ͳ୹จ౤ߘܕͷ4/4Ͱ͢ w ؅ཧऀ΋ઃஔ৔ॴ΋ҟͳΔଟ਺ͷαʔόʔͰӡ༻͞Ε͓ͯΓɺར༻ऀ͸ࣗ෼ࣗ਎ͰαʔόʔΛબͿ͔ɺࣗ਎ ͰαʔόʔΛ։ઃ͢ΔͳΓͯ͠ɺΞΧ΢ϯτΛ࡞੒ ϩάΠϯͯ͠ར༻͢Δɺඇதԝूݖܕͷ4/4ͱͯ͠༗໊ Ͱ͢

  38.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ͷํ਑ w NBTUPEPOΛςʔϚʹɺਖ਼نԽ͞ΕͨΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟͷ࣮૷ྫΛ͝঺հ͠·͢ w #ΛςʔϚͱ࣮ͨ͠૷ྫͱಉ༷ʹɺϦϙδτϦύλʔϯΛ༻͍࣮ͯ૷͍͖ͯ͠·͢ w αʔόʔ͔Βऔಘͨ͠σʔλΛϑϥοτͳσʔλߏ଄΁෼ׂͯ͠Ωϟογϡ͢ΔͨΊʹɺσʔλϕʔεΛ࢖༻͠·͢ w ࠓճɺσʔλϕʔεʹ͸$PSF%BUBΛ࠾༻͠·͢

    w લఏͱͯ͠ɺঢ়ଶ؅ཧΛ໨తͱ͍ͯ͠ΔͨΊɺσʔλͷӬଓԽ͸ߦΘͣʹΠϯϝϞϦͰ$PSF%BUB͸࢖༻͠·͢
  39.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ͷํ਑ w NBTUPEPOͰ͸ɺ౤ߘΛ4UBUVT ϢʔβʔΛ"DDPVOUͷ&OUJUZͰද͍ͯ͠·͢

  40.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ͷํ਑ w ྫ͑͹ɺϗʔϜͷλΠϜϥΠϯͷϨεϙϯε͸ҎԼͷΑ͏ʹΦϒδΣΫτ͕ωετߏ଄ʹͳͬͯฦ͖ͬͯ·͢

  41.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ͷํ਑ w ਖ਼نԽ͞ΕͨΩϟογϡͰ͸ɺ֤ΦϒδΣΫτʹରͯ͠ҰҙͳࣝผࢠΛ෇༩͠ɺωετ͞ΕͨΦϒδΣΫτΛϑϥοτͳσʔλ ߏ଄΁ͱஔ͖׵͑ͯ؅ཧ͍ͯ͘͜͠ͱʹͳΓ·͢

  42.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ·ͣ͸4UBUVTͱ"DDPVOUʹରԠ͢Δ$PSF%BUBͷ.PEFMΛ࡞੒͠·͢ w 4UBUVTͷSFMBUJPOTIJQʹ"DDPVOUΛઃఆ͍ͯ͠·͢

  43.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ࣍ʹɺ4UBUVT&OUJUZΛ$PSF%BUB΁Ωϟογϡ͢Δ$PSF%BUB4UBUVT$BDIF4UPSFΛ࡞੒͠·͢

  44.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ଓ͍ͯɺΩϟογϡ͢ΔΦϒδΣΫτ΁ׂΓৼΔࣝผࢠΛอଘ͢Δ*O.FNPSZ$BDIF,FZ4UPSFΛ࡞੒͠·͢ w ΩϟογϡΩʔͷมߋΛ؂ࢹͰ͖ΔΑ͏ʹɺ"OZ1VCMJTIFS$BDIF,FZ /FWFSͱͯ͠DBDIF,FZQSPQFSUZΛެ։ ͍ͯ͠·͢

  45.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ͦͯ͠ɺ)PNF5JNFMJOF3FQPTJUPSZΛ࡞੒͠ɺϗʔϜͷλΠϜϥΠϯΛαʔόʔ͔Βऔಘͯ͠Ωϟογϡʹอଘ͢Δϝιου GFUDI5JNFMJOFΛ௥Ճ͠·͢ w औಘͨ͠Ϩεϙϯε͸$PSF%BUB4UBUVT$BDIF4UPSFܦ༝Ͱ$PSF%BUB΁อଘ͞ΕɺλΠϜϥΠϯʹදࣔ͢Δ4UBUVTͷ*%ͷ഑ྻ͸ *O.FNPSZ$BDIF,FZ4UPSF΁อଘ͞Ε·͢

  46.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ଓ͍ͯɺ$PSF%BUBʹอଘ͍ͯ͠Δ4UBUVTͷมߋΛ؂ࢹͰ͖ΔΑ͏ʹɺ$PSF%BUB4UBUVT$BDIF4UPSFʹ࣮૷ Λ௥Ճ͍͖ͯ͠·͢ w ࣮૷ͷৄࡉ͸ׂѪ͠·͕͢ɺ$PSF%BUBͷมߋΠϕϯτΛ؂ࢹ͢Δ$PNCJOFͷΧελϜ1VCMJTIFSΛฦ͢ XBUDIϝιουΛ௥Ճ͠·͢

  47.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ͦͯ͠ɺ͜ͷ1VCMJTIFSΛฦ͢XBUDIϝιουΛɺ)PNF5JNFMJOF3FQPTJUPSZ΁௥Ճ͠·͢ w ͜ͷ࣌ɺϖʔδϯά౳ʹΑΓΩϟογϡΩʔ͕ߋ৽͞Εͨͱ͖ʹ4UBUVTͷ؂ࢹॲཧ΋ߋ৽Ͱ͖ΔΑ͏ʹ$PNCJOFͷ NBQͱTXJUDI5P-BUFTUͷPQFSBUPSΛ࢖༻ͯ͠$BDIF4UPSFͷXBUDIϝιουΛݺͼग़͠·͢

  48.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w 6*ଆͰ͸ɺ)PNF5JNFMJOF3FQPTJUPSZXBUDIΛݺͼग़ ͯ͠λΠϜϥΠϯͷΩϟογϡΛ؂ࢹ͠·͢ w ը໘දࣔ࣌ʹ )PNF5JNFMJOF3FQPTJUPSZGFUDI5JNFMJOFΛݺͼग़͢ Α͏ʹͯ͠ɺ࠷৽ঢ়ଶͷλΠϜϥΠϯ͕දࣔ͞ΕΔΑ ͏ʹ͠·͢

  49.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ͜͜Ͱɺ֤౤ߘʹର͍͍ͯ͠ͶΛߦͬͨͱ͠·͢ w 3FQPTJUPSZͷ͍͍ͶͷϝιουͰ͸ɺ֘౰͢Δ4UBUVTͷΩϟογϡΛద੾ʹߋ৽͠·͢ w ͜ΕʹΑΓɺ͜ͷ4UBUVTΛ؂ࢹ͍ͯ͠Δ7JFX͸ࣗಈతʹ͍͍Ͷঢ়ଶ͕൓ө͞ΕΔΑ͏ʹͳΓ·͢ w "DDPVOU΁ͷߋ৽ॲཧʹ͍ͭͯ΋ಉ༷ͷ࣮૷Λߦ͍·͢

  50.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w Ҏ্͕ɺ$PSF%BUBΛ༻͍ͨਖ਼نԽ͞ΕͨΩϟογϡ ʹΑΔঢ়ଶ؅ཧͷ࣮૷ྫͰ͢ w ͜ΕʹΑΓɺखଓ͖తʹؔ࿈͢ΔΩϟογϡΛߋ৽͢ Δ͜ͱͳ͘ɺ֤ը໘ͷ6*͕ద੾ʹ࠷৽ঢ়ଶʹอͨΕΔ Α͏ʹͳΓ·ͨ͠

  51.  NBTUPEPOΛςʔϚͱ࣮ͨ͠૷ྫ w ࠓճͷ࣮૷͸(JU)VC্ͰιʔείʔυΛެ։͍ͯ͠ΔͷͰΑ͚Ε͹͝ཡ͍ͩ͘͞ IUUQTHJUIVCDPNSPDLOBNF.BTUPEPO/PSNBMJ[FE$BDIF4BNQMF

  52.  ΩϟογϡʹΑΔঢ়ଶ؅ཧͷΞʔΩςΫνϟ w ਖ਼نԽ͞ΕͨΩϟογϡ͕ສೳͱ͍͏Θ͚Ͱ͸ͳ͘ɺ͍͔ͭ͘՝୊͸ଘࡏ͠·͢ w σʔλΛ෼ׂͯ͠ฏʹͳΒ͢෼ɺਖ਼نԽ͞ΕͨΩϟογϡͷํ͕Ωϟογϡ΁ͷಡΈ ॻ͖ͷύϑΥʔϚϯε͸ѱ͘ͳΓ·͢ w ·ͨɺϦΫΤετ୯ҐͷΩϟογϡʹൺ΂ͯ؅ཧίετ͸૿ͨ͢ΊɺΩϟογϡىҼ ͷԿΒ͔ෆ۩߹͕ൃੜͨ͠ࡍͷݪҼಛఆ΍ϦΧόϦͷίετ͸ߴ͖ͭ͘·͢

    ਖ਼نԽ͞ΕͨΩϟογϡʹ͓͚Δ՝୊
  53. ঢ়ଶ؅ཧख๏ͷબఆج४

  54.  ঢ়ଶ؅ཧख๏ͷબఆج४ w 4UBUF͸ɺzڞ༗͞ΕΔൣғzͱ͍͏จ຺Ͱɺ-PDBM4UBUFͱ(MPCBM4UBUFͷछྨʹ෼ྨͰ͖·͢ w -PDBM4UBUF7JFXͷதͰดͨ͡ঢ়ଶ w (MPCBM4UBUFΞϓϦέʔγϣϯશମ ͋Δ͍͸ෳ਺ͷ7JFXͰڞ༗͞ΕΔঢ়ଶ -PDBM4UBUFPS(MPCBM4UBUF

  55.  -PDBM4UBUFPS(MPCBM4UBUF w ΞϓϦʹ͓͍ͯදݱ͢Δঢ়ଶͷ΄ͱΜͲ͕-PDBM4UBUFͰ͋Ε͹ɺಛผͳΞʔΩςΫνϟΛ࠾༻ ͢Δඞཁ͸͋Γ·ͤΜɺͦͷ7JFXͷதͰద੾ʹ4JOHMF4PVSDFPG5SVUIΛୡ੒Ͱ͖ΔΑ͏ʹ࠷ খݶͷ4UBUF)PMEFSΛ༻ҙ͢Δͷ͕ྑ͍Ͱ͠ΐ͏ w (MPCBM4UBUF͕ଘࡏ͢Δ৔߹͸ɺ·ͣ͸ͦͷ4UBUFΛڞ༗͢Δ7JFXͷڞ௨ͷ਌7JFX·Ͱঢ়ଶΛ Ҿ্͖͛ͯɺࢠ7JFX΁఻೻͢Δख๏Λݕ౼ͯ͠Έ͍ͯͩ͘͞ w

    ͦͷ্Ͱɺѻ͏(MPCBM4UBUFͷେ͖͞΍఻೻ର৅ͷ7JFXͷଟ͞Λڐ༰Ͱ͖͘ͳ͖ͬͯͨ৔߹ ͸ɺ࣍ͷબఆج४Λ࣋ͬͯΞʔΩςΫνϟΛબఆ͠·͠ΐ͏
  56.  ঢ়ଶ؅ཧख๏ͷબఆج४ w (MPCBM4UBUF͸z؅ཧ͢Δओମzͱ͍͏จ຺Ͱɺ4FSWFS4UBUFͱ$MJFOU4UBUFͷछྨʹ෼ྨͰ͖·͢ w 4FSWFS4UBUF"1*͔ΒͷϨεϙϯεʹΑͬͯऔಘ͞ΕΔɺαʔόʔ͕ओମͱͳͬͯ؅ཧ͍ͯ͠Δঢ়ଶ w $MJFOU4UBUFΞϓϦʹద༻͢ΔςʔϚͷछྨ΍ݱࡏબ୒தͷΞΧ΢ϯτͷΑ͏ͳɺΫϥΠΞϯτ͕ओ ମͱͳͬͯ؅ཧ͍ͯ͠Δঢ়ଶ 4FSWFS4UBUFPS$MJFOU4UBUF

  57.  4FSWFS4UBUFPS$MJFOU4UBUF w (MPCBM4UBUFͷ΄ͱΜͲ͕4FSWFS4UBUFͰߏ੒͞Ε͍ͯΔ৔߹ɺΩϟογϡʹΑΔঢ়ଶ؅ཧख๏ Λݕ౼͠·͠ΐ͏ w ֤ը໘Ͱදࣔ͞ΕΔ&OUJUZ͕͋Δఔ౓ಠཱ͍ͯ͠Δ৔߹͸ϦΫΤετ୯ҐͷΩϟογϡΛɺ4/4 ͷΑ͏ʹಉ͡&OUJUZ͕ଟ͘ͷը໘Ͱදࣔ͞ΕΔ৔߹͸ਖ਼نԽ͞ΕͨΩϟογϡΛݕ౼͠·͠ΐ͏

  58.  4FSWFS4UBUFPS$MJFOU4UBUF w ΠϯϝϞϦͰ΋Γ΋Γঢ়ଶ͕มԽ͢ΔΑ͏ͳ$MJFOU4UBUFΛ؅ཧ͢Δඞཁ͕ ͋ΔͳΒ͹ɺ3FEVY͔Β೿ੜͨ͠5IF$PNQPTBCMF"SDIJUFDUVSF 5$" ͷ Α͏ͳΞʔΩςΫνϟͷ࠾༻Λݕ౼͠·͠ΐ͏ w 5$"͸1PJOU'SFFʹΑͬͯ։ൃ͞ΕͨΞʔΩςΫνϟͰɺ࣮ࡍʹ1PJOU

    'SFF͸5$"Λ༻͍ͯJTPXPSETͱ͍͏044ͷJ04ΞϓϦΛ։ൃ͍ͯ͠·͢ w JTPXPSET͸ɺΩϡʔϒʹݱΕΔ୯ޠΛݟ͚ͭͯফ͍ͯ͘͠ήʔϜΞϓϦ ͰɺසൟʹมԽ͢Δେ͖ͳ$MJFOU4UBUFΛѻ͏ΞϓϦͱͳ͍ͬͯ·͢
  59.  ঢ়ଶ؅ཧख๏ͷબఆج४

  60. ·ͱΊ

  61.  ·ͱΊ w ΠϕϯτۦಈʹΑΔ֤ը໘ͷঢ়ଶͷಉظΛྫʹঢ়ଶ؅ཧʹ͓͚ΔΞʔΩςΫνϟͷඞཁੑΛઆ໌͠ɺ3FEVYʹΑΔ (MPCBM4UBUFͷ؅ཧख๏͔ΒɺΩϟογϡʹΑΔ4FSWFS4UBUFͷ؅ཧɺ֤ͦͯ͠ঢ়ଶ؅ཧख๏ͷબఆج४ʹ͍ͭͯ ͓࿩͍͖ͤͯͨͩ͠͞·ͨ͠ w ΞϓϦ಺Ͱѻ͓͏ͱ͍ͯ͠Δঢ়ଶͷछྨ΍ن໛ʹΑͬͯ࠷దͳΞʔΩςΫνϟͱ͍͏΋ͷ͸มΘΓ·͢ɺྲྀߦ͍ͬͯ ΔΞʔΩςΫνϟ͕ඞͣ͠΋ͲͷΞϓϦʹ΋ద߹͢Δͱ͸ݶΓ·ͤΜ w

    ຊτʔΫ͕গ͠Ͱ΋ɺঢ়ଶ؅ཧͷΞʔΩςΫνϟΛબఆ͢Δ্ͰͷࢀߟʹͳΕ͹޾͍Ͱ͢
  62.  ࢀߟจݙ w એݴత6*ͷঢ়ଶ؅ཧͱΞʔΩςΫνϟ4XJGU6*ͱ(SBQI2-ʹΑΔ࣮ફ w IUUQTTQFBLFSEFDLDPNTPOBUBSETXJGUVJHSBQIRM w 5IFOFXXBWFPG3FBDUTUBUFNBOBHFNFOU w IUUQTGSPOUFOENBTUFSZDPNQPTUTUIFOFXXBWFPGSFBDUTUBUFNBOBHFNFOU

    w $PEFMBCϦϙδτϦύλʔϯ w IUUQTEFWFMPQFSBOESPJEDPNDPEFMBCTCBTJDBOESPJELPUMJOUSBJOJOHSFQPTJUPSZQBUUFSO w (SBQI2-$PODFQUT7JTVBMJ[FE w IUUQTXXXBQPMMPHSBQIRMDPNCMPHHSBQIRMCBTJDTUIFDPODFQUTPGHSBQIRM w %FNZTUJGZJOH$BDIF/PSNBMJ[BUJPO w IUUQTXXXBQPMMPHSBQIRMDPNCMPHBQPMMPDMJFOUDBDIJOHEFNZTUJGZJOHDBDIFOPSNBMJ[BUJPO w ͋ͳͨͷϓϩμΫτʹ"QPMMP$MJFOU͸ඞཁͳ͍͔΋͠Εͳ͍ w IUUQTVTFS fi STUJLZVDPKQFOUSZ w είʔϓͱϥΠϑλΠϜͰߟ͑Δ3FBDU4UBUF࠶ߟ w IUUQT[FOOEFWBLGNBSUJDMFTSFBDUTUBUFTDPQF
  63. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ