Slide 1

Slide 1 text

API࢓༷ॻΛ ͍͍ײ͡ʹ؅ཧ͢Δ potatotips #28 yuyakaido

Slide 2

Slide 2 text

ࣗݾ঺հ • ւ౻༏໻ʢ͔͍Ͳ͏Ώ͏΍ʣ • גࣜձࣾΤ΢ϨΧ • ໿1೥ͷΠϯλʔϯΛܦͯɺ2015೥4݄ʹ৽ଔೖࣾ • AndroidͷνʔϜϦʔμʔ • ςετ͓͡͞Μ yuyakaido yuyakaido

Slide 3

Slide 3 text

גࣜձࣾΤ΢ϨΧ • ࣗࣾαʔϏεͷاըɾ։ൃɾӡӦ • ΦϯϥΠϯσʔςΟϯάαʔϏεɿ • Χοϓϧઐ༻ΞϓϦɿ • ࣾһ਺ɿ104໊ • IAC ΤϯδχΞ 51 ඇΤϯδχΞ 53

Slide 4

Slide 4 text

API࢓༷ॻ Ͳ͏΍ͬͯ؅ཧͯ͠·͔͢ʁ

Slide 5

Slide 5 text

Α͋͘Δྫ • GitHub Wiki • Google Spreadsheet Ϩεϙϯε͕࢓༷ॻͱҧ͏Μ͚ͩͲ σϓϩΠ଴ͪͰ։ൃετοϓ ୭΋ϝϯς͠ͳ͍໰୊ ςετίʔυͱ࢓༷ॻ͕ζϨ͍ͯΔ໰୊ Wiki͸ͳΜͱͳ͘ςϯγϣϯ্͕͕Βͳ͍

Slide 6

Slide 6 text

• Apiary • Swagger

Slide 7

Slide 7 text

Apiary • https://apiary.io/ • MarkdownͬΆ͍ײ͡Ͱهड़ • ਖ਼֬ʹ͸ɺAPI Blueprint • ϞοΫαʔόʔͷੜ੒΋Մೳ

Slide 8

Slide 8 text

Apiary

Slide 9

Slide 9 text

Swagger • http://swagger.io/ • YAMLͬΆ͍ײ͡Ͱهड़ • ਖ਼֬ʹ͸ɺOpen API • ϞοΫαʔόʔͷੜ੒΋Մೳ

Slide 10

Slide 10 text

Swagger

Slide 11

Slide 11 text

Apiary or Swagger • Swagger͸ΫϥΠΞϯτίʔυͷੜ੒͕ग़དྷΔ • Google΍MicrosoftͳͲ͕SwaggerΛϕʔεʹ Open API InitiativeΛൃ଍ • Swagger͕ࠓޙελϯμʔυʹͳ͍ͬͯ͘ʁ

Slide 12

Slide 12 text

Swagger • YAMLͰAPI࢓༷Λهड़ • ϞοΫαʔόʔΛੜ੒ • ΫϥΠΞϯτίʔυΛੜ੒

Slide 13

Slide 13 text

ϞοΫαʔόʔ • API࢓༷ॻ͑͞هड़͢Ε͹ɺαʔόʔͷ࣮૷Λ ଴ͨͣʹΫϥΠΞϯτ΋࣮૷Մೳ • ϞοΫαʔόʔΛ࢖ͬͨςετ

Slide 14

Slide 14 text

ΫϥΠΞϯτίʔυ • ϨεϙϯεͷೖΕ෺Ϋϥε GET /items {
 "items": [
 {
 "id": 0,
 "name": "foo",
 }, {
 "id": 1,
 "name": "bar",
 }
 ]
 } public class ItemResponse {
 
 @SerializedName("items")
 public List items;
 
 public static class Item {
 @SerializedName("id")
 public Long id;
 @SerializedName("name")
 public String name;
 }
 
 } ItemResponse

Slide 15

Slide 15 text

·ͱΊ • Wiki΍SpreadsheetͰͷAPI࢓༷ॻ؅ཧ͸ ͪΐͬͱਏ͍ • Apiary΍SwaggerΛ࢖͏ͱ޾ͤʹͳΕΔ • Swagger͕ࠓޙͷελϯμʔυʹͳΔ͔΋͠ Εͳ͍

Slide 16

Slide 16 text

Thank you :) Credit: NASA Earth Observatory/NOAA NGDC