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

サービスデザインプロジェクトB 第5回「ウェブサービスデザイン 1」 / Web Servic...

Kenji Saito
November 09, 2020

サービスデザインプロジェクトB 第5回「ウェブサービスデザイン 1」 / Web Service Design 1

2020年11月9日、慶應義塾大学大学院メディアデザイン研究科の「サービスデザインプロジェクトB (2020 秋)」第5回にて使用したスライドです。

Kenji Saito

November 09, 2020
Tweet

More Decks by Kenji Saito

Other Decks in Technology

Transcript

  1. B 2020 5 1 ( ) B 2020 — 5

    1 — 2020-11-09 – p.1/23
  2. https://speakerdeck.com/ks91 Discord Discord ( / / ) Zoom URL (

    ) B 2020 — 5 1 — 2020-11-09 – p.2/23
  3. ( ) 1 10 12 • 2 10 19 •

    3 10 26 • 4 11 2 • 5 11 9 1 • 6 11 16 2 7 11 30 8 12 7 4 ( 3 ) ↓ B 2020 — 5 1 — 2020-11-09 – p.3/23
  4. Web API ( ) BBc-1 – Ethereum API B 2020

    — 5 1 — 2020-11-09 – p.4/23
  5. 2. API (1) ( ) (2) Web API 2020 11

    7 ( ) 23:59 JST B 2020 — 5 1 — 2020-11-09 – p.6/23
  6. . . . . . . 12 9 ( 11:00

    ) ( ) / ( / ) : ( etc) ( ) ( ) ( ) B 2020 — 5 1 — 2020-11-09 – p.7/23
  7. Y W ⇒ ( ) : Proof of Work ↑

    : ↑ ∼ B 2020 — 5 1 — 2020-11-09 – p.8/23
  8. N ← ⇒ ( ) B 2020 — 5 1

    — 2020-11-09 – p.9/23
  9. T Qiita ⇒ Stack Exchange B 2020 — 5 1

    — 2020-11-09 – p.10/23
  10. T IC IC ⇒ PUF (Physically Unclonable Function) B 2020

    — 5 1 — 2020-11-09 – p.11/23
  11. Web API ( ) API : Application Programming Interface Interface

    through which an application can make use of some features provided somewhere Web API : API by HTTP(S) requests In the case, features are provided by a web server B 2020 — 5 1 — 2020-11-09 – p.12/23
  12. REST (Representational State Transfer) Stateless client/server protocol Well-defined set of

    methods POST, GET, PUT, DELETE vs. CRUD (Create/Read/Update/Delete) CRUD represents the basic set of operations against a database Uniquely identify resources by URI Some demonstrations later Often returns results in the form of JSON (JavaScript Object Notation) B 2020 — 5 1 — 2020-11-09 – p.13/23
  13. REST – contd. Hypermedia that can handle both application information

    and state transitions An example of state transitions (state machines) (For example, on the web, page = state, and the page presents possible operations in that state as a set of buttons) A stack is a last-in, fast-out date store You can push data in, and pop data out A design would be like, POST to create a stack POST to push to the stack POST to pop from the stack GET to peek in the stack state PUT to update an item DELETE to delete the stack B 2020 — 5 1 — 2020-11-09 – p.14/23
  14. Demonstration $ git clone https://github.com/ks91/sample-web-api.git This is a really simple

    sample API that provides stacks (requires Python3 and Flask) Run the simple web API server $ python stack.py See README to discover how to try At the end of this demo, we will try (5 − 2) × (3 + 4) B 2020 — 5 1 — 2020-11-09 – p.15/23
  15. ( Ethereum ) จॻ  จॻ  จॻ  จॻ

     จॻ O ཌ೔ͷ׭ใ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ ح਺ͷ৔߹͸ ෳ੡͢Δ ˞μΠδΣετ͸ݩͷ ɹσʔλ͕ ϏοτͰ΋ ɹҟͳΔͱશ͘ҟͳΔ஋ ɹͱͳΓɺ·ͨɺμΠδΣ ɹετ͔ΒݩͷσʔλΛ ɹਪଌ͢Δ͜ͱ͸Ͱ͖ͳ͍ɻ ɾจॻ Λ։ࣔ͞Εͨ " ࢯ͸ɺಉ࣌ʹϒϧʔͰࣔ͞ΕΔμΠδΣετͱͦΕ͕ࠨӈͷͲͪΒʹҐஔ͢Δ͔Λड͚औΔɻ ɾ" ࢯ͸จॻ  ͷμΠδΣετ͔Β࢝Ίͯɺ࿈݁͢΂͖Ұ࿈ͷμΠδΣετΛ஌Δ͜ͱʹͳΔͷͰɺϚʔΫϧϧʔτʹࢸΔ·Ͱͷ ɹܭࢉΛ࠶ݱͰ͖ɺಘΒΕͨϚʔΫϧϧʔτ͕จॻͷ࡞੒೔ͷཌ೔ͷ׭ใʹهࡌ͞Ε͍ͯΔ஋ͱҰக͢Δ͜ͱΛ֬ೝͰ͖Δɻ هࡌ͢Δ ੥ٻʹج͖ͮ ։ࣔ͞Ε͏Δ ৘ใ ެ։͞ΕΔ৘ใ ϚʔΫϧϧʔτ Ϛ ồ Ϋ ϧ ໦  ߦ ੓ ͕ อ ؅ ͠ ෦ ෼ త ʹ ։ ࣔ ͢ Δ ʜʜ ʜʜ ʜʜ ʜʜ ʜʜ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ μΠδΣετ B 2020 — 5 1 — 2020-11-09 – p.17/23
  16. ( / ) : ( etc) ( ) ( )

    ( ) miro Verifiable credentials B 2020 — 5 1 — 2020-11-09 – p.20/23
  17. 3. API (1) ( ) (2) Web API 2020 11

    14 ( ) 23:59 JST B 2020 — 5 1 — 2020-11-09 – p.22/23