ਓͷʹཱ͍ͪͨҰ৺ͰυΩϡϝϯτΛվળͯ͠ΈͨΒࢥ͍ͬͯͨҎ্ʹޮՌ͕ग़ͨAPI Meetup Fukuokaؙࢁ ͻ͔Δ
View Slide
ࣗݾհ• גࣜձࣾϰΝϧݚڀॴ• ؙࢁ ͻ͔Δ• ςΫχΧϧΤόϯδΣϦετ• ਆಸݝ૬ݪࢢࡏॅ
ܦྺ20144݄20147݄20157݄2017݄1݄ϰΝϧݚڀॴ ೖࣾWebAPIʮӺ͢ͺ͋ͱwebαʔϏεʯ։ൃϝϯόʔʹ৽ػೳ։ൃอकɺج൫ͷվमυΩϡϝϯτվળνʔϜͷҰһʹձࣾॳ ςΫχΧϧΤόϯδΣετʹ
2014
WebAPIͷ෦ॺʹଐ• ૣ͘νʔϜʹೃછΈ͍ͨ• Կ͔Βͳ͍ɺ͕ࣝͳ͍
ͦ͏ͩɺLTΛ͠Α͏
ࣾLTͷࢀՃ• αʔϏεͷࣝΛਂΊΔͨΊʹ• Πϯϓοτ͢ΔʹΞτϓοτ͕Ұ൪• ࣦഊ͢ΔͳΒࠓ͔͠ͳ͍• ࣾͰ݄ʹ̍ճߦΘΕΔLTʹ 5ճ࿈ଓͰࢀՃ͢Δ͜ͱΛܾҙ
LT༰ͷࡧʮͦ͏͍͑͏ͪͷυΩϡϝϯτɺ ٯҾ͖ϦϑΝϨϯεతͳͷͬͯͳ͍ΜͰ͢Ͷɻ ྫ͑ɺ͋Δܦ࿏Λఆظ݊Λར༻ͯͬͨ͠ͱ͖ͷ ӡܭࢉ͕͍ͨ࣌͠ʹɺAPIͷ༷͔Β ࣗͰ୳͞ͳ͍ͱ͍͚ͳ͍ΜͰ͢Ͷɻʯʮ͔֬ʹݴΘΕͯΈΕͦ͏ͩͶɻ͏ͪͷWebAPIͬͯ ͍ํ͕ෳࡶ͔ͩΒɺ͋ΔͱศརͩͶɻʯ
ͦΕͩʂ
• ࣾһͷԠ• ؒతͳϑΟʔυόοΫ• ࣾͰ Ӻ͢ͺ͋ͱWebαʔϏεʹؙࢁʁ • WebAPIͷֶͼ• ײతͰͳ্͍ʹ υΩϡϝϯτ؆ૉ• Ӻ͢ͺ͋ͱWebαʔϏεʹΘ͔ΓͮΒ͍WebAPI
2015
;ͱͨ͠ձ͔ΒʮSSLରԠ͔ͨ͠ΒυΩϡϝϯταΠτʹࡌ͓͍ͤͯͯʔʯʮͲ͜ʹࡌͤΔΜͰ͔͢ɻࠓAPIͷ༷͔͠ࡌͤͯͳ͍͔ΒɺࡌͤΔͱͨ͠Β৽͘͠ίϯςϯπΛ࡞Δඞཁ͕͋ΔΜ͡Όͳ͍Ͱ͔͢ʁʯʮ͔֬ʹಋೖ෦ͷ͍߹Θͤଟ͍͠ʲελʔτΞοϓΨΠυʳͱ͔ཉ͍͠Ͷ͑ʯʮSSLରԠͷ݅ʲΑ͋͘Δ͓͍߹ΘͤʳͰٵऩͰ͖ͦ͏Ͱ͢ͶʂʯʮίϯςϯπΛ૿͢ͳΒɺӦۀͱαϙʔτʹ૬ஊͯ͠ΈͨΒʁ Ϣʔβͷ૭ޱʹͳͬͯΔ͔Βʯ
ͦΕͩʂ(2ճ)
υΩϡϝϯτվળʹऔΓΉ͜ͱʹ
υΩϡϝϯτվળνʔϜ݁• ݁ͷܦҢ• Ӧۀ෦ॺͷਓʹ૬ஊͨ͠ΒɺʮੋඇΓ͍ͨʂʯͱݴ͏ਓΛ հͯ͘͠Εͨ• Ӧۀ෦ॺͷਓ͕αϙʔτ෦ॺͷਓΛݺΜͰ͘Εͨ• νʔϜฤ• Ӻ͢ͺ͋ͱwebαʔϏεͷӦۀΛ୲͢Δ෦ॺɹɹɿ1ਓ• Ӻ͢ͺ͋ͱwebαʔϏεͷαϙʔτΛ୲͢Δ෦ॺɿ1ਓ• Ӻ͢ͺ͋ͱwebαʔϏεͷ։ൃΛ୲͢Δ෦ॺɹɹɿ1ਓ• ӡ༻• ݄1ճͷఆྫMTG• త• Ӻ͢ͺ͋ͱwebαʔϏεͷՁ্
ԿΛվળ͢Δʁ
࠷ͳWebAPIυΩϡϝϯτ
• ι͔ͬΓ• ߋ৽͞Εͳ͍• ߋ৽ཤྺ͕ͳ͍• ઐ༻ޠͷઆ໌ͳ͠• ౷Ұੑ͕ͳ͍• ٯҾ͖͕ͳ͍• ཉ͍͠ใ͕ݟ͔ͭΒͳ͍• ԿΛͬͨΒ͓͔͔ۚΔ͔͔Βͳ͍• ԿΛ͑Δͷ͔͔Βͳ͍• ϑϦʔϓϥϯ/ελϯμʔυϓϥϯͷυΩϡϝϯταΠτ͕ࠅࣅ͍ͯͯ͠ ۠ผ͠ʹ͍͘࠷ͳWebAPIυΩϡϝϯτ
ඇΤϯδχΞͱҰॹʹGithubͰཧ• όʔδϣϯཧ͞Ε͍ͯͳ͔ͬͨυΩϡϝϯτͷιʔείʔυΛGithubཧԼʹ• υΩϡϝϯτվળνʔϜʹGithubͰϓϧϦΫΛ֬ೝͯ͠΄͍͠ͱએݴ• ͢ΜͳΓOK͞ΕɺΞΧϯτΛऔಘͯ͠Β͏• ஸೡͳϨΫνϟʔ• ϓϧϦΫͷ֬ೝํ๏• ίϝϯτͷํ• ઈରʹԡͪ͠Ό͍͚ͳ͍Ϙλϯ (mergeϘλϯ)
ςεταΠτͷ༻ҙ• ඇΤϯδχΞ͕GithubͰϓϧϦΫΛ ֬ೝͯ͠Β͍͘͢͢ΔͨΊ• ιʔείʔυ͚ͩͩͱɺϨΠΞτ͕བྷΉ ϓϧϦΫΛ֬ೝ͢Δ͜ͱ͕Ͱ͖ͳ͍• AWS S3ʹςεταΠτ༻ͷBucketΛ༻ҙ͠ɺ࡞ۀϒϥϯνͷ༰Λөͤͨ͞
ࣗಈσϓϩΠ• ϓϧϦΫ͕Ϛʔδ͞ΕΔͨͼʹɺຖճAWS S3ʹखಈͰϑΝΠϧΛΞοϓϩʔυ͢Δͷ ໘͍҆͘͞͠શ͡Όͳ͍• Wercker(CIπʔϧ)Λͬͯ σϓϩΠࣗಈԽͷઃఆΛߦ͏• ࡞ۀ͕அવָʹ
੩తαΠτδΣωϨʔλಋೖ• ͕ੵΈ্͕͍ͬͯͨ• googleΞφϦςΟΫεΞϯέʔτϑΥʔϜΛҰ෦ͷϖʔδʹ͔͠औΓೖΕΒΕͳ͍• ૉͷhtmlΛվม͠ଓ͚Δ͜ͱ݈શͰͳ͍• υΩϡϝϯτmarkdownͰཧ͍ͨ͠• middlemanಋೖ• html͔ΒmarkdownͷมखͰߦͬͨ(ল)
վળͷޮՌ
։ൃαϙʔτۀͷܰݮ• νέοτͷਪҠ• 39ظ(վળલ)ͷ߹ܭɿ178• 40ظ(վળޙ)ͷ߹ܭɿ141→ 20%ݮ
Ϣʔβͷฦ৴͕εϜʔζʹ
Ϣʔβ͔ΒϑΟʔυόοΫ• υΩϡϝϯτ͕Θ͔Γ͍͢͜ͱͰɺϢʔβͷ։ൃίετ͕ܰݮ• ಋೖࣄྫͰυΩϡϝϯτ͕๙ΊΒΕΔΑ͏ʹ
ͬͨͥʂ
υΩϡϝϯτվળͯ͠Έͯ• Ϣʔβ͔ΒͷϑΟʔυόοΫ͕Ϟνϕʔγϣϯʹ• αϙʔτରԠ࣌ؒΛଞͷ͜ͱʹ͑Δ• औΓΉதͰ͕ࣝ૿͑ͨ
ͦΕҎ֎ʹ• υΩϡϝϯτ͕ྑ͘ͳ͚ͬͨͩͰͳ͘• νʔϜͷதͰɺࢲҎ֎ʹυΩϡϝϯτͷ ϓϧϦΫΛࣗओతʹग़ͯ͘͠ΕΔ• ։ൃҎ֎ͷਓͱू·Δ͕࣌ؒ૿͑ɺ ใڞ༗ͷͱͳͬͨ
ৼΓฦͬͯΈΔͱ
Կ͔Βͳ͔ͬͨ࣌• Ͱ͖ͦ͏ͳ͜ͱ͔ΒͬͯΈͨ• ࣾLT• ࣝͷٵऩ• ࣾһͱͷձ͕ੜ·ΕΔ• υΩϡϝϯτվળʹͭͳ͕ͬͨ• …etc
Thank you!
͓ؼΓͷࡍӺ͢ͺ͋ͱΞϓϦͰ