REST API#とは

E7620f0c3c96df88ce624c3e7c38c07b?s=47 masibw
July 18, 2020

REST API#とは

サマーインターン前にツヨツヨになっちゃおうの会で登壇した際の資料です

https://connpass.com/event/181419/

E7620f0c3c96df88ce624c3e7c38c07b?s=128

masibw

July 18, 2020
Tweet

Transcript

  1. 3&45 "1*ͱ͸ 8&#ΞʔΩςΫνϟελΠϧΛ஌Δ

  2. 注意書き εϥΠυதʹग़Δݴ༿͸ ݱ࣮తͳ༻๏ʹଇ͍ͯ͠ΔͨΊ ݫີͳఆٛͱҧ͏ͱ͜Ζ͕͋Γ·͢

  3. 自己紹介 NBTJCX ·͠ UXJUUFS!NBTJCX CMPHIUUQTNFTJNBTJDPN (JUIVC NBTJCX ηΩϡΞ৘ใγεςϜݚڀࣨ "UDPEFS ࠷ߴ

    ྘৭ ීஈ͸+BWB (Pͱ͔Λॻ͍ͯ·͢ɻ
  4. 3&45 "1* ͬͯ͝ଘ஌Ͱ͔͢

  5. 3&45 GVM "1*とは 3&45ʹ४ڌ͍ͯ͠Δ"1*ͷ͜ͱ

  6. 3&45とは 3&QSFTFOUBUJPOBM 4UBUF 5SBOTGFS 8FCͷΞʔΩςΫνϟελΠϧ

  7. 3&45とは ΫϥΠΞϯταʔόʔ ελΠϧ ʹ੍໿ΛՃ͑ͨ΋ͷ

  8. ੍໿⁞ʮΫϥΠΞϯταʔόʯ ΫϥΠΞϯτ͕ϦΫΤετΛૹΓɺαʔόʔ͸ ϨεϙϯεΛฦ͢ํࣜ クライアント サーバー

  9. ੍໿⁞ʮΫϥΠΞϯταʔόʯͷϝϦοτ ίϯϙʔωϯτ ߏ੒ཁૉ ͕ಠཱ͢ΔͨΊ ΫϥΠΞϯτ ݺͼग़͠ଆ ͕ॊೈʹͳΔ クライアント サーバー 1$ɾεϚϗɾήʔϜػ

    FUDʜ
  10. ੍໿ ʮεςʔτϨεʯ • αʔόʔ͕ΫϥΠΞϯτͷ઀ଓ৘ใΛอ࣋͠ͳ͍ • クライアントは毎回必要な全ての情報をサーバーに送る

  11. ੍໿ ʮεςʔτϨεʯͷϝϦοτ • ϦιʔεΛ͙͢ʹղ์Ͱ͖Δ • εέʔϥϏϦςΟ͕61͢Δ • ؂ࢹʢௐࠪʣͷࡍͷՄࢹੑ͕61͢Δ৴པੑ61

  12. 制約❸「キャッシュ」 Ԡ౴ ฦࣄ Λ࢖͍ճ͢ αʔόʔͷෛՙΛݮΒͤΔ

  13. ੍໿⁡ʮ౷ҰΠϯλϑΣʔεʯ ϝιου͕ݶఆ͞Ε͍ͯΔ (&5ɾ1045ͳͲ

  14. ੍໿⁡ʮ౷ҰΠϯλϑΣʔεʯͷϝϦοτ • ΫϥΠΞϯτɾαʔόʔͷಠཱੑ͕ߴ·Δ • શମͷΞʔΩςΫνϟ͕γϯϓϧʹͳΔ

  15. ੍໿⁢ʮ֊૚ԽγεςϜʯ • ϩʔυόϥϯα ෛՙ෼ࢄ • ϓϩΩγ ΞΫηε੍ݶ౳ ͳͲΛઃஔ͠΍͍͢

  16. ੍໿⁣ʮίʔυΦϯσϚϯυʯ +BWB4DSJQU ͳͲ ΛΫϥΠΞϯτ ʹμ΢ϯϩʔυ࣮ͯ͠ߦͰ͖Δ ΫϥΠΞϯτʹػೳΛ௥ՃͰ͖Δ

  17. 3&45ͷ੍໿  ΫϥΠΞϯταʔό  εςʔτϨε  Ωϟογϡ  ౷ҰΠϯλϑΣʔε 

    ֊૚ԽγεςϜ  ίʔυΦϯσϚϯυ
  18. ݁ہͲΜͳ"1*Λ࣮૷͢Ε͹ྑ͍ʁ

  19. 63-ʹ͍ͭͯݟͯΈΑ͏

  20. $PPM 63*TEPO`UDIBOHF dΫʔϧͳ63*͸มΘΒͳ͍ d 5JN#FSOFST-FF

  21. ⁞ʮ"1*ͩͱ໌ࣔ͠όʔδϣϯΛؚΊΔʯ • IUUQBQJFYBNQMFDPNVTFST • IUUQFYBNQMFDPNBQJVTFST "1*ͷόʔδϣϯ্͕͕ͬͯ΋ΫϥΠΞϯτଆͰબ΂Δ

  22.  ʮ໊ࢺΛ࢖༻ͯ͠ϦιʔεΛද͢ʯ • શମΛද͢৔߹͸ෳ਺ܗΛ࢖͏ • IUUQBQJFYBNQMFDPNVTFST • ୯ҰͷϦιʔεΛද͢৔߹ • IUUQBQJFYBNQMFDPNVTFST\VTFSJE^

  23. ⁠ʮҰ؏ੑΛ࣋ͨͤΔʯ • εϥογϡ  Λ༻͍ͯ֊૚Λ ຤ඌʹ͸͚ͭͳ͍ ද͢ • IUUQBQJFYBNQMFDPNVTFST\VTFSJE^ •

    ϋΠϑϯΛ࢖͍୯ޠΛͭͳ͛Δ ΞϯμʔείΞͰ͸ͳ͍ • IUUQBQJFYBNQMFDPNBENJOVTFST • খจࣈΛ࢖༻͢Δ • ϑΝΠϧ֦ுࢠΛ࢖༻͠ͳ͍
  24. ❹「$36%関数名を使わない」 μϝͳྫ • IUUQBQJFYBNQMFDPNVTFSTDSFBUF  ৽ن࡞੒  • IUUQBQJFYBNQMFDPNVTFSTTIPX 

    औಘ  • IUUQBQJFYBNQMFDPNVTFSTVQEBUF  ߋ৽  • IUUQBQJFYBNQMFDPNVTFSTEFMFUF  ࡟আ  $36%ͱ͸<$SFBUF 3FBE 6QEBUF %FMFUF>ͷ͜ͱ
  25. ❹「$36%関数名を使わない」 • 1045IUUQBQJFYBNQMFDPNVTFST  ৽ن࡞੒  • (&5IUUQBQJFYBNQMFDPNVTFST  औಘ

     • 165IUUQBQJFYBNQMFDPNVTFST  ߋ৽  • %&-&5&IUUQBQJFYBNQMFDPNVTFST  ࡟আ  )551ϝιουΛ༻͍ͯಈ࡞Λࣔ͢
  26. ⁢ʮϑΟϧλʔॲཧ͸ΫΤϦύϥϝʔλͰʯ • IUUQBQJFYBNQMFDPNVTFST SFHJPO64"  64"ͷΈදࣔ  • IUUQBQJFYBNQMFDPNVTFST TPSUCJSUIEBUF

    ஀ੜ೔Ͱιʔτ  ϑΟϧλϦϯάɾιʔτͳͲ
  27. ·ͱΊ 3&45΍$PPMͳ63-ʹ͍ͭͯҙࣝͯ͠ αϚʔΠϯλʔϯʹࢀՃ͠·͠ΐ͏ʂ

  28. ࢀߟࢿྉ • "SDIJUFDUVSBM4UZMFTBOE UIF%FTJHOPG/FUXPSLCBTFE4PGUXBSF"SDIJUFDUVSFT • IUUQTXXXJDTVDJFEVdGJFMEJOHQVCTEJTTFSUBUJPOUPQIUN 3PZ5IPNBT'JFMEJOH • 3&45"1*5VUPSJBM •

    IUUQTSFTUGVMBQJOFU • ʮ8FCΛࢧ͑Δٕज़ʯ ࢁຊཅฏ ٕज़ධ࿦ऀ ೥ॳ൛ • $PPM63*TEPO`UDIBOHF • https://www.w3.org/Provider/Style/URI