https://orecon.connpass.com/event/63769/
J04Ͱςετ༰қͳઃܭΛ ࣮ݱ͢ΔͨΊͷσβΠϯύλʔϯ
View Slide
ࣗݾհ·ͣ
TUSVDUDMBTTؒͷ ߏతͳࠩΛܭࢉ͢Δ ϥΠϒϥϦͷ࡞ऀͰ͢σόοάʹศརͳ
ϑΟʔϧυͷࠩҟΛ จࣈྻͱͯ͠औಘͰ͖·͢ʂTUSVDUDMBTTΛҾʹ EJ⒎ؔΛ࣮ߦ͢Δͱʜ
IUUQHJUIVCDPN,VOJXBL.JSSPS%J⒎,JU͘͢͝ศརͰ͢ʂ
σβΠϯύλʔϯͷ հͷલʹ
ཧతͳςετͱɺ ͲΜͳͷͩΖ͏͔ʁ
खಈςετͱ ࣗಈςετͷؔΈͳ͞Μ͝ଘ
࣌ؒܦաʢػೳ૿େ͍ͯ͘͠ʣίετߴࣗಈςετखಈςετखಈςετ͕༗ར ࣗಈςετ͕༗རػೳ͕૿͍͑ͯͬͨͱͯ͠ ࣗಈςετܧଓ͍͢͠
ςετରͷཻͱ ίεύͷ͓͓͖ؔ͑ͯ͘͞
ؔ" ؔ#ʜग़ྗO௨Γ ग़ྗN௨Γʜ
ςετରͷཻ͕ খ͍͞ͱ͖
୯ମςετؔ" ؔ#ςετͷɿON௨Γ୯ମςετO௨Γ N௨ΓϞδϡʔϧݸผʹςετ͞ΕΔͷͰ
ςετରͷཻ͕ େ͖͍ͱ͖
Ϟδϡʔϧ"ʜςετͷɿOʷN௨ΓϞδϡʔϧ#ʜϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡखಈ6*ςετϞδϡʔϧ࿈݁ͨ͠··ςετ͞ΕΔͷͰ
͠ɺςετͰ͖Δ͕ Nͩͬͨͱ͢Δͱʜ
୯ମςετؔ" ؔ#ΧόʔͰ͖Δൣғยํ୯ମςετO௨Γ N௨Γ
Ϟδϡʔϧ"ʜΧόʔͰ͖Δൣғ͘͝Ұ෦Ϟδϡʔϧ#ʜϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡʔϧ#ʜϞδϡखಈ6*ςετ
ͭ·Γςετରͷཻ͕ খ͍͞ςετʢ୯ମςετʣɺ ίετύϑΥʔϚϯε͕ߴ͍ʂ
͜͜·Ͱͷ·ͱΊw खಈςετͱൺͯࣗಈςετ ܧଓ͍͢͠w ࣗಈςετͷதͰ୯ମςετ ίετύϑΥʔϚϯε͕ߴ͍w ͭ·ΓɺࣗಈςετͰ͋Δ୯ମςετɺ ܧଓ͘͢͠ίετύϑΥʔϚϯε͕ߴ͍
ݟ͖͑ͯͨ͜ͱཧͷσόοάڥେྔͷ ୯ମςετʹΑͬͯ࡞ΒΕΔܧଓ͘͢͠ίετύϑΥʔϚϯε͕ߴ͍
୯ମςετ͙͢ʹ Ͱ͖Δͷ͔ʁ͜͜Ͱٙʂ
Ͱ͖·ͤΜ
୯ମςετͷରؔΫϥεͭ·ΓɺؔΫϥεͷ ઃܭͷӨڹΛड͚͍͢
ྫ΄Μͱ͔ͳʁ
ςετ͠ͳ͍ͱා͍͙Β͍ʹෳࡶͳؔͳʹΒόϦσʔγϣϯΛ͢ΔΑ͏ͩ
ςετ͢Δʹςετରʹ దͳೖྗΛ͢Δඞཁ͕͋Δ͜ͷೖྗ͕ϑΟʔϧυܦ༝Ͱ ͔͠QSJWBUFͩͬͨΓ͢Δͱ ೖྗΛ੍ޚ͢Δ͜ͱ͕͍ͦͦ͠
όϦσʔγϣϯͷ݁Ռ͕ Πϯελϯεϝιουͷ ݺͼग़͠ͷ༗ແͰ͔͠ ఆͰ͖ͳ͍ͱ͖ɺ όϦσʔγϣϯ݁Ռͷ औಘʹςΫχοΫ͕ ඞཁͱ͞ΕΔ
͜͜·Ͱͷ·ͱΊ୯ମςετ͕؆୯͔Ͳ͏͔ ରͷઃܭʹେ͖͘ࠨӈ͞ΕΔ
ॏཁͳͷ୯ମςετ͕ ؆୯ͳઃܭʹ͢Δ͜ͱ
ͭͷσβΠϯύλʔϯͷհ୯ମςετΛ؆୯ʹ͢Δ
w 0VUQVU0CKFDU*OKFDUJPOw 4QZ7JFX$POUSPMMFSw *OQVU0CKFDU*OKFDUJPOw 4JOHMF.FUIPE4UVC4QZw %FQFOEFODZ#BHw -PHHJOH0CTFSWFSw 3Y&WFOU#MPDLFSw 4UBUF.BDIJOF.PEFMw 1SFQSPDFTTPS5PLFO
҉తͳग़ྗΛ ଊ͑Δύλʔϯύλʔϯ
ςετରจࣈྻͷόϦσʔγϣϯؔೖྗจࣈྻ͕Ͱ͋Ε TVDDFTT Λɺͦ͏Ͱͳ͚Ε GBJMFE ΛݺͿΑ͏ͩ ʢܧঝΛલఏͱ࣮ͨ͠ʣ
ςετΛߟ͑ͯΈΔ·ͣ
ରԠ͢ΔςετͲ͏ͬͯTVDDFTT͕ ݺΕͨ͜ͱΛݕূ͢Ε ͍͍ͩΖ͏͔
ςετͰ͖·ͤΜ
ςετ͔ΒઃܭΛ ٯࢉ͢ΔͦΕͳΒ
࠷ॳʹݕ౼͖͢ɺ݁ՌΛؔͷ Γʹ͢Δ͜ͱͰͨͩ͢͠ɺঢ়گʹΑͬͯ͜ͷํ๏͕ ͑ͳ͍͜ͱ͋Γ·ͦ͢͜Ͱɺࠓճ͜ͷํ๏͕͑ͳ͔ͬͨ ͱͯ͠ɺผͷํ๏Λݕ౼͠·͢ѹతʹ؆୯
0VUQVU0CKFDU*OKFDUJPOͦ͏͍͏ͱ͖
ςετରͷจࣈྻͷόϦσʔγϣϯ͕ؔ͜͜όϦσʔγϣϯؔͷ ग़ྗʹͨΔ
ग़ྗઌͷΦϒδΣΫτͷ1SPUPDPMΛ࡞
ग़ྗઌΦϒδΣΫτΛ Ҿ͔ΒೖͰ͖ΔΑ͏ʹमਖ਼ޭࣦഊॲཧग़ྗઌΦϒΤδΣΫτʹ௨ઃܭमਖ਼ޙͷςετର
ຊମଆͷ४උ͓ྃΊͰͱ͏͍͟͝·͢
ςετͷ४උͰͬͦ͘͞
ग़ྗ༰Λه͢ΔِͷΦϒδΣΫτʢ4QZʣΛ࡞ϝιου͕ݺΕΔͱ͜͜ʹه͞Ε͍ͯ͘
ઃܭमਖ਼ޙͷςετग़ྗઌʹઌ΄Ͳͷ4QZΛࢦఆTVDDFTT ͚͕ͩͨͩҰ͚ͩݺΕͨ͜ͱΛݕূͰ͖Δʂ
0VUQVU0CKFDU*OKFDUJPOw ͲΜͳ࣌ʹ͏͔ɿw ςετ͔Βଊ͑ͮΒ͍ग़ྗ͕͋Δͱ͖w ԿΛ͢Δ͔ɿw ग़ྗΛ࢘ΔΦϒδΣΫτΛ1SPUPDPMԽw ग़ྗΛه͢ΔِͷΦϒδΣΫτʢ4QZʣΛ࡞w ςετͷ࣌4QZΛར༻
5JQT4QZ7JFX$POUSPMMFS͜͏͍͏ͷ࡞Ε·͢
6*7JFX$POUSPMMFSͷ-JGF$ZDMFΛࢹ͢Δ4QZ
҉తͳೖྗΛ ੍ޚ͢Δύλʔϯύλʔϯ
ςετରαʔόʔͱͷ௨৴ڞ௨ͷ "1*Ϋϥε͕୲͓ͯ͠Γɺ αʔόʔ͔Βฦ͖ͬͯͨΛ େจࣈʹͯ͠ฦ͍ͯ͠ΔΑ͏ͩαʔόʔʹϢʔβʔ໊Λ͍߹Θͤɺ େจࣈʹͯ͠ฦؔ͢
ରԠ͢Δςετ෦తʹ͍ͬͯΔ"1*Ϋϥε αʔόʔ͔ΒΛऔಘͯ͘͠ΔͨΊɺ େจࣈʹͳΔલͷ༧Ͱ͖ͳ͍ͦͷͨΊݕূʹ͏ਖ਼ղΛܾΊΒΕͳ͍ςετରΛ࡞ίʔϧόοΫ͔Β ݁ՌΛݕূ͍ͨ͠ςετରΛ࣮ߦ
*OQVU0CKFDU*OKFDUJPOͦ͜Ͱ
෦తʹ͍ͬͯΔ"1*ΫϥεΛͦͷ··1SPUPDPMԽ͜ͷ1SPUPDPMΛݩʹͳͬͨ"1*Ϋϥεʹ࣮͓ͤͯ͘͞
ؔͷҾ͔Βɺ෦తʹ͏ "1*ΫϥεΛͤΔΑ͏ʹमਖ਼෦తʹ͞Εͨ"1*ΫϥεΛར༻ͯ͠Λऔಘ͢Δͭ·Γɺ͢"1*ΫϥεΛม͑Εऔಘ͞ΕΔม͑ΒΕΔमਖ਼ޙͷςετର
ςετରʹ͢Λςετ༻ͷͷʹ͢ΔͨΊʹઌ΄Ͳͷ1SPUPDPMΛِ࣮ͨ͠ͷΫϥεʢ4UVCʣΛ࡞ࣄલʹࢦఆ͕ͨ͠ςετରʹΔςετରʹ͍ͨ͠Λ ࣄલʹࢦఆ͢Δ
ςετͰઌ΄Ͳͷ ِͷΫϥεΛ͏ςετରʹ͢Λ ͜͜ͰࢦఆͰ͖Δฦͬͯ͘Δ͕Θ͔ͬͯΔͷͰ ਖ਼ղΛ؆୯ʹਪଌͰ͖Δ ཁ͢Δʹɺҙਤ௨Γେจࣈʹ Ͱ͖ͨ͜ͱΛ͔֬ΊΒΕΔઃܭमਖ਼ޙͷςετ
*OQVU0CKFDU*OKFDUJPOw ͲΜͳ࣌ʹ͏͔ɿw ςετ͔Βૢ࡞ͮ͠Β͍ೖྗ͕͋Δͱ͖w ԿΛ͢Δ͔ɿw ೖྗΛ࢘ΔΦϒδΣΫτΛ1SPUPDPMԽw ೖྗΛ੍ޚՄೳͳِͷΦϒδΣΫτʢ4UVCʣΛ࡞w ςετͷ࣌4UVCΛར༻
6*,JUͷग़ྗΛ ଊ͑Δύλʔϯύλʔϯ
ςετରϘλϯ͕ԡ͞ΕͨΒɺ 6*/BWJHBUJPO$POUSPMMFSͷ QVTI7JFX$POUSPMMFSϝιουͰ ભҠ͍ͨ͠Α͏ͩ
ରԠ͢ΔςετQVTI7JFX$POUSPMMFS͕ ݺΕͨ͜ͱΛͲͷΑ͏ʹ ݕূͰ͖ΔͩΖ͏͔ϘλϯͷԡԼΛ࠶ݱ͢Δ
ςετ͔ΒઃܭΛ ٯࢉ͢Δͦ͏͍͏ͱ͖
جຊతʹ0VUQVU0CKFDU*OKFDUJPOͰɺ 6*/BWJHBUJPO$POUSPMMFSͷ ϝιουݺͼग़͠Λه͢ΕΑ͍͔͠͠ɺ6*/BWJHBUJPO$POUSPMMFSʹ ͨ͘͞ΜͷϑΟʔϧυͱϝιου͕͋Δ
6*/BWJHBUJPOͷશͯͷϑΟʔϧυͱ ϝιουΛඋ͑ͨ4QZͷ࡞ʹ ͔ͳΓͷख͕͔͔ؒΔʜͳΜͱ͔QVTI7JFX$POUSPMMFS͚ͩΛ ࠩ͠ସ͑ΒΕͳ͍ͷ͔ʜ
4JOHMF.FUIPE4UVC4QZͦ͜Ͱ
·ͣQVTI7JFX$POUPMMFSʹ ૬͢Δ1SPUPDPMΛ࡞͜ͷ1SPUPDPMͰ࣮Λཁٻ͢Δͷ QVTI7JFX$POUSPMMFS͚ͩʹ͢Δ
࣍ʹઌ΄Ͳͷ1SPUPDPMΛ࣮ͯ͠ ࣮ࡍͷQVTI7JFX$POUSPMMFSΛݺͿ ΦϒδΣΫτΛ࡞1SPUPDPMͷ࣮ʹඞཁͳͷ QVTI7JFX$POUSPMMFS͚ͩ ͳͷͰָ͍͢͝
Ҿܦ༝Ͱઌ΄ͲͷΫϥεΛೖઌ΄ͲͷΫϥεܦ༝Ͱ QVTI7JFX$POUSPMMFS ͕ݺͼग़͞ΕΔΑ͏ʹ͢Δઃܭमਖ਼ޙͷςετର
ಉ͡1SPUPDPMΛ࣮͢Δ4QZΛ࡞QVTI7JFX$POUSPMMFSͷ ݺͼग़͠ཤྺͷهՕॴΛ༻ҙQVTI7JFX$POUSPMMFS͕ݺΕͨΒهʹՃ
ઌ΄Ͳͷ4QZΛҾܦ༝Ͱೖ4QZܦ༝ͰQVTI7JFX$POUSPMMFS ͷݺͼग़͕͠ݕূͰ͖ͨʂઃܭमਖ਼ޙͷςετ
4JOHMF.FUIPE4UVC4QZw ͲΜͳ࣌ʹ͏͔ɿw ϝιουϑΟʔϧυ͕ଟ͍ΦϒδΣΫτ ͷೖग़ྗΛ੍ޚ͍ͨ͠ͱ͖w ԿΛ͢Δ͔ɿw ϝιουͭΛΓग़ͯ͠4UVC4QZΛ࡞w *OQVU0VUQVU0CKFDU*OKFDUJPOͰೖ
ґଘؔΛཧ͢Δ ύλʔϯύλʔϯ
ςετର0VUQVU*OQVU0CKFDU*OKFDUJPOΛ ଓ͚ΔͱɺҾ͕૿͑ͯ͘ΔએݴҾॳظԽςετͰɺ ͦΕͧΕಉ͡Α͏ͳ͜ͱΛճ ॻ͘ඞཁ͕͋ͬͯͱͯͭΒ͍
ಛʹ7JFX$POUSPMMFSܥಉ͡Α͏ͳҾΛ Կॻ͘ӋʹͳͬͯͭΒ͍
ςετॻ͚Δ͕ɺςετʹؔͳ͍Ҿ͕ଟ͍ͷͰݟ௨͕͠ѱ͍
%FQFOEFODZ#BHͦ͜Ͱ
ͯ͢ͷ7JFX$POUSPMMFSͰڞ௨ͯ͠͏ͷΛ#BH·ͱΊΔҙͯ͠ཉ͍͠ͷɺڞ௨͠ͳ͍ͷ ͜͜ʹೖΕ͍͚ͯͳ͍ͱ͍͏͜ͱ ʢΠϯλʔϑΣʔεݪଇʹҧ͢ΔͨΊʣ
ςετରΛमਖ਼ͯ͠ɺઌ΄Ͳ·ͱΊͨ#BHΛड͚औΔΑ͏ʹ͢Δ
ґଘର͕૿͑ͯɺ #BHʹՃ͢Δ͚͍͍ͩͦͷͨΊɺमਖ਼͢ΔՕॴΛ ͭʹݮΒͤΔ
ςετଆͰ͞Βʹ#BHͷ ࡞ํ๏Λ؆୯ʹͰ͖·͢
ςετ༻ʹ#BHʹࣗΛ࡞͢ΔϑΝΫτϦؔΛੜ͓ͯ͘͠ಛʹࢦఆ͕ͳ͚ΕσϑΥϧτҾͰ దͳͷ͕ΘΕΔΑ͏ʹ͓ͯ͘͠
ςετଆͰઌ΄ͲͷϑΝΫτϦؔΛ͏Α͏ʹ͢ΔͲΜͳͷ͕ΘΕͯςετʹ Өڹ͕ͳ͍ͳΒɺҾΛলུͰ͖Δ
%FQFOEFODZ#BHw ͲΜͳ࣌ʹ͏͔ɿw ͋ΔΫϥε܈ʹڞ௨ͨ͠Ҿ͕ଟ͘ɺ ݟ௨͕͠ѱ͘ͳ͍ͬͯΔ߹w ԿΛ͢Δ͔ɿw ڞ௨ͨ͠ҾΛ#BHͰͻͱ·ͱΊʹཧw ςετͰ#BHΛϑΝΫτϦؔͰ࡞ͯ͠ར༻w ϑΝΫτϦؔʹσϑΥϧτҾΛઃఆ͓ͯ͘͠ͱศར
ςετରΛׂ͢Δ ύλʔϯύλʔϯ
ςετରͷ.PEFMঢ়ଶมԽΛEFMFHBUF ͔ΒࢹͰ͖Δ͋ΔؔΛ࣮ߦ͢Δͱ ෦ঢ়ଶ͕มԽͯ͠EFMFHBUFʹ௨͞Εɺ͍ͭͰʹϩά͕औΒΕΔ.PEFMঢ়ଶΛ อ͍࣋ͯ͠ΔϩάΛ୲͢Δ-PHHFS Ҿܦ༝Ͱೖ͞ΕΔ
.PEFMͷঢ়ଶભҠΛ ͔֬ΊΔςετʹ -PHHFSΛ༩͑Δඞཁ͕͋ΔͷͪΐͬͱҧײରԠ͢Δςετ .PEFMͷঢ়ଶભҠΛݕূ͍ͯ͠Δ
͜͏͍͏ͱ͖ϩάػೳΛ .PEFM͔Βͨ͘͠ͳΔϩά.PEFMͷঢ়ଶભҠΛ ه͢Δͷʹͳ͍ͬͯΔͭ·ΓɺϩάػೳΛͨ͠ͱ ͯ͠ঢ়ଶભҠΛݕͰ͖Εɺ ͜Ε·Ͱ௨ΓʹϩάΛऔΕͦ͏ͳ ༧ײ͕͋Δ
-PHHJOH0CTFSWFSͦ͜Ͱ
-PHHFSΛ৽͘͠ .PEFMͷࢹऀʹ Ճ͢ΔΘ͚͕ͩɺ EFMFHBUFͷ··ͩͱ ෳͷΦϒδΣΫτ͔Β ࢹͮ͠Β͍ͷͰɺ 3Y4XJGUஔ͖͑Δ.PEFM͔Βϩάͷ Λ֎͢ઃܭमਖ਼ޙͷςετର
.PEFMΛࢹͯ͠ϩάΛૹ৴͢ΔΫϥεΛ࡞.PEFMͷঢ়ଶ͕ มԽͨ͠ΒϩάΛૹ৴.PEFMͷঢ়ଶભҠΛࢹ
.PEFMͷ͔Βϩά͕֎ΕͨͷͰɺςετ͕ ঢ়ଶભҠͷݕূʹ ઐ೦Ͱ͖ΔΑ͏ʹͳͬͨʂઃܭमਖ਼ޙͷςετ
-PHHJOH0CTFSWFSw ͲΜͳ࣌ʹ͏͔ɿw .PEFMʹϩάػೳ͕ࠞࡏ͍ͯ͠Δ߹w ԿΛ͢Δ͔ɿw .PEFMΛෳͷ0CTFSWFS͔ΒࢹͰ͖ΔΑ͏ʹ͢Δw .PEFM͔ΒϩάػೳͷΛ֎͢w .PEFMΛࢹ͢Δ-PHHFSΛ࡞͢Δ
ิɿ3Y4XJGU͕ݏͳਓ͚ɺ EFMFHBUFͷෳܥ͜͏ͳΔࠈͷນ։͚
EFMFHBUFΛྻʹ͢ΔEFMFHBUFΛྻʹ͢Δͱɺ ऑࢀরʹ͢Δίϯςφܕ͕ඞཁʹͳΔԼͩͱ͙͢ʹճऩ͞ΕͪΌ͏ͷͰޡΓɿ weak var delegates: [Delegate]
ઌ΄Ͳͷίϯςφܕͷܕύϥϝʔλʹ EFMFHBUFͷ1SPUPDPMΛೖΕ͍͕ͨɺ 4XJGUͷ੍Ͱ͜Ε͕Ͱ͖ͳ͍ͷͰ ۤ͠ฆΕͷ5ZQF&SBTVSF͕ൃੜ
ิͷ·ͱΊw %FMFHBUFͰෳͷΦϒδΣΫτ͔ΒࢹͰ͖Δw ͨͩ͠ɺ࣮ݱ͢ΔͨΊͷίʔυྔଟ͘໘w ͓ͱͳ͘͠3Y4XJGUʢ͔ͦΕʹ૬͢ΔͷʣΛ ͍·͠ΐ͏
ඇಉظͳςετΛ ಉظతʹ͢Δύλʔϯύλʔϯ
ςετରʢ࣮ࡍͷ௨৴ͩͱίʔυ͍ͷͰ༻ʣॏෳऔಘΛ͙ ϑϥά͕͋ΔޭΠϕϯτ͕ྲྀΕΔࣦഊΠϕϯτ͕ྲྀΕΔऔಘʹޭͨ͠Β௨औಘΛ։࢝͢ΔؔจࣈྻΛαʔόʔ͔Βऔಘ͢Δ.PEFM
ରԠ͢Δςεταʔόʔͱͷ௨৴ޙͷঢ়ଶΛςετ͍͕ͨ͠ɺαʔόʔͱͷ ௨৴ඇಉظͳͷͰɺඇಉظͳςετʹ͠ͳ͍ͱ͍͚ͳ͍͔͠͠ɺඇಉظͳςετίʔυྔ͕ଟ͘ͳΔͷͰɺ ؾ͕ਐ·ͳ͍ʜ
3Y&WFOU#MPDLFSͦ͜Ͱ
Πϕϯτͷಉظతͳ ͪ߹ΘͤͷͨΊʹ3Y#MPDLJOHΛ͍·͢࠷ॳͷ݁Ռ͕OJMͳͷͰ ͦΕΛআ֎OJMͰͳ͍݁Ռ͕དྷΔ·Ͱ $PNQMFUFΛͭ$PNQMFUFʹͳΔ·Ͱ ίʔυͷ࣮ߦΛࢭΊΔ݁Ռ͕͖ͨΒऔΓग़͢ಉظతʹॻ͚ͨʂमਖ਼ޙͷςετ
ͪ߹Θͤ͢Δίʔυͪ͝Όͪ͝Ό͢ΔͷͰɺ ؔʹ͘͘Γग़͢ͱՄಡੑͱ࠶ར༻ੑ্͕͕Δ
3Y&WFOU#MPDLFSw ͲΜͳ࣌ʹ͏͔ɿw 3YͰදݱ͞ΕͨΠϕϯτ͕ඇಉظͰ ςετΛॻ͖ͮΒ͍ͱ͖w ԿΛ͢Δ͔ɿw 3Y#MPDLJOHΛ͔ͭͬͯಉظతͳίʔυʹ͢Δw ͪ߹Θͤͷίʔυؔʹ·ͱΊΔͱΑ͍
෦ঢ়ଶΛ੍ޚ͢Δ ύλʔϯύλʔϯ
ςετରઌ΄Ͳͱ ಉ͡.PEFMΛ͍·͢
ςετΛߟ͑ͯΈΔ͏Ұ
͜ͷ.PEFMͷͯ͢ͷঢ়ଶΛ ςετ͢Δ͜ͱʹͨ͠ͱ͠·͢͜ͷ.PEFMͷͱΓ͑Δঢ়ଶͬͯɺ ͍͍ͬͨͲΕ͘Β͍͋ΔΜͰ͠ΐ͏ʁ
SFTVMU%JE$IBOHFͷ ࠷ޙͷFSSPS%JE$IBOHFͷ ࠷ޙͷJT'FUDIJOHOJM OJM USVFSFTVMU OJM USVFOJM FSSPS USVFSFTVMU FSSPS USVFOJM OJM GBMTFSFTVMU OJM GBMTFOJM FSSPS GBMTFOJM FSSPS GBMTF͋ɺ͋Εʁ͜Μͳʹ͋ΔΜ͚ͩͬʜʁ
͋Γ͑ͳ͍ঢ়ଶ ؚ·Ε͍ͯΔؾ͕͢Δʜʢঢ়ଶͷݟ௨͕͠ѱ͍ͷͰ֬৴Λͯͳ͍ʣ
ঢ়ଶͷҰཡΛఆٛͯ͠ɺ Ұݩཧ͢Εݟ௨͕͠Αͦ͞͏
4UBUF.BDIJOF.PEFMͦ͜Ͱ
·ͣ.PEFMͷऔΓ͏Δঢ়ଶͷҰཡΛ࡞Δ
୯ҰͷϑΟʔϧυͰ ঢ়ଶΛҰݩཧ͢Δ͕มΘͬͨΒ ௨Λͯ͘͠ΕΔ 3Y4XJGU7BSJBCMF Λ͏ͱ͘ॻ͚Δ7BSJBCMFͷมԽ ϑΟʔϧυΛ௨ͯ͠ ֎෦͔ΒࢹͰ͖Δঢ়ଶ͕Ұݩཧ ͞Εͨ͜ͱͰ ঢ়ଶભҠͷ༷ࢠ͕ Α͘Θ͔Δઃܭमਖ਼ޙͷຊମίʔυ
ঢ়ଶͷҰཡ͕͋ͬͯɺ͞Βʹ ঢ়ଶ͕Ұݩཧ͞Ε͍ͯΕ ؆୯ʹঢ়ଶભҠਤ͕ॻ͚Δ
.PEFMͷऔΓ͏Δঢ়ଶͷҰཡ͜Ε
.fetching.fetched(String) .failed(Error).notFetchedYetGFUDI GFUDI GFUDI GFUDI
ঢ়ଶભҠਤΛݟΔͱ ҹͷશ෦ͰͭͦΕͧΕͭͣͭςετ͢Ε શͯͷঢ়ଶભҠΛݕূͨ͜͠ͱʹͳΔ
4UBUF.BDIJOF.PEFMw ͲΜͳ࣌ʹ͏͔ɿw .PEFMͷͱΓ͏Δঢ়ଶͷݟ௨͕͠ѱ͍ͱ͖w ԿΛ͢Δ͔ɿw FOVNͰঢ়ଶͷҰཡΛ࡞w ୯ҰͷϑΟʔϧυͰঢ়ଶΛཧ͢Δw 3Y4XJGU7BSJBCMFΛ͏ͱ͘ॻ͚Δ
ܕݕࠪͰςετΛ ݮΒ͢ύλʔϯύλʔϯ
ςετରEFRVFVF3FVTBCMF$FMMɺ SFHJTUFSΕͯΔͱΫϥογϡ͢Δ
Ϋϥογϡ͠ͳ͍͜ͱ ͙Β͍֬ೝ͍͕ͨ͠ʜ͍͍ͪͪςετ͢Δͷʜ
ςετ͠ͳͯ͘ ͍͍ํ๏Λߟ͑Δͦ͏͍͏ͱ͖
SFHJTUFSͨ͠ূڌΛ EFRVFVF͕ؔ ཁٻ͢ΔΑ͏ʹ͢Ε Αͦ͞͏ͳ༧ײ͕͋Δ
1SFQSPDFTTPS5PLFOͦ͏͍͏ͱ͖
UPLFO֎͔Β ࡞Εͳ͍Α͏ʹ pMFQSJWBUFͰ੍ݶઃܭमਖ਼ޙͷςετରʢ$FMMଆʣSFHJTUFS͢Δͱূڌͱͯ͠ UPLFOΛಘΒΕΔΑ͏ʹ͢ΔSFHJTUFSͷϥούʔ ؔΛ࡞͢Δ
EFRVFVFؔͷҾͰɺSFHJTUFSͨ͠ ূڌͷUPLFOΛཁٻ͢ΔΑ͏ʹ͢ΔUPLFO֎͔Β࡞Εͳ͍ͷͰɺઌʹSFHJTUFS ͯ͠UPLFOΛಘ͓͔ͯͳ͍ͱϏϧυ͕௨Βͳ͍SFHJTUFSͯ͋͠ΕOJMʹͳΒͳ͍ͱ ެࣜυΩϡϝϯτʹॻ͍ͯ͋ΔͷͰ ҆৺ͯ͠GPSDFVOXSBQͰ͖Δʂ
1SFQSPDFTTPS5PLFOw ͲΜͳ࣌ʹ͏͔ɿw ͋Δॲཧͷલʹඞཁͳલॲཧ͕͋Δͱ͖w ԿΛ͢Δ͔ɿw લॲཧΛ࣮ߦ͠ͳ͍ͱಘΒΕͳ͍5PLFOΛ࡞w લॲཧ͕ඞཁͳؔͰ5PLFOΛཁٻͤ͞Δ
·ͱΊw ཧڷେྔͷ୯ମςετͷதʹ ͋Γ·͢w ୯ମςετ͕؆୯ʹͳΔͭͷ σβΠϯύλʔϯΛհ͠·ͨ͠w ίʔυΛॻ͘ͱ͖ςετ͕ Ͳ͏ͳΔ͔Λҙࣝ͠·͠ΐ͏
એw ൃදऀͷۈΊΔNJYJ(3061Ͱ J04ΤϯδχΞΛืू͍ͯ͠·͢ʂw ͝ڵຯ͋Δํ[email protected]·Ͱ %JSFDU.FTTBHFΛ͓ئ͍͠·͢ʂ