Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hypermedia Affordance
Search
Akihito Koriyama
July 30, 2017
Technology
5
540
Hypermedia Affordance
Hypermedia Affordance with BEAR.Sunday
Akihito Koriyama
July 30, 2017
Tweet
Share
More Decks by Akihito Koriyama
See All by Akihito Koriyama
BEAR.Sunday Framework Masterclass
koriym
0
16
Be Framework: 生命システムとしての存在理解
koriym
0
70
新世界の理解
koriym
0
180
AI Centric
koriym
0
430
app-state-diagram
koriym
0
120
OOP, Double Dispatch and Visitor Pattern
koriym
3
180
BEAR.Sunday 2014-2024
koriym
0
78
イベント駆動コンテンツ (a.k.a Webアプリケーションの効率を再定義するBEAR.Sundayの分散キャッシングフレームワーク)
koriym
4
8.9k
Unconf: RWA読書会
koriym
0
640
Other Decks in Technology
See All in Technology
IAMユーザーゼロの運用は果たして可能なのか
yama3133
1
440
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
470
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
360
Snowflakeでデータ基盤を もう一度作り直すなら / rebuilding-data-platform-with-snowflake
pei0804
6
1.6k
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.4k
CARTAのAI CoE が挑む「事業を進化させる AI エンジニアリング」 / carta ai coe evolution business ai engineering
carta_engineering
0
1.9k
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
230
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
220
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
800
SREには開発組織全体で向き合う
koh_naga
0
360
.NET 10の概要
tomokusaba
0
110
初めてのDatabricks AI/BI Genie
taka_aki
0
200
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Context Engineering - Making Every Token Count
addyosmani
9
520
Building Applications with DynamoDB
mza
96
6.8k
Scaling GitHub
holman
464
140k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
How to Ace a Technical Interview
jacobian
281
24k
It's Worth the Effort
3n
187
29k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Transcript
Hypermedia affordance with BEAR.Sunday @koriym 2017
None
IUUQTFOXJLJQFEJBPSHXJLJ"⒎PSEBODF
IUUQFLSJUTKQXQDPOUFOUVQMPBETDPNJDB⒎PSEBODFQEG
None
GET /menu
None
None
no affordance
None
None
rel=“order” !
/order but how ?
OPTIONS /order
None
None
POST /order/?name=latte ☕
None
PUT /order?id=123&extra=shot
None
GET /order?id=123
None
OPTIONS /payment
PUT: the payment should be idempotent
IUUQTXXXJOGPRDPNKQBSUJDMFTXFCCFSSFTUXPSLqPX Resource interface for state machine URI as state "
" "
200 GET /menu 201 POST /order/?name=latte 100 PUT /order/?order_id=1234&extra=shot 200
PUT /payment?order_id&card_num=123&expire=101018 URIs as event source
* CQS * CQRS * Discoverable * Cache * Observe
* Message Driven Development * Micro Service * Event Sourcing * Decoupled Component REST++
Hypermedia API
Hypermedia Driven Development
None
IUUQTXXXXPSHJOUFHSBUJPOXPSLTIPQQIZQFSNFEJBPSJFOUFEEFTJHOQEG
IUUQTXXXJOGPRDPNKQBSUJDMFTXFCCFSSFTUXPSLqPX
None
None
Self-Descriptive API
None
CURIEs (Compact URI) IUUQTFOXJLJQFEJBPSHXJLJ$63*&
None
None
None
IUUQKTPOTDIFNBPSH
backend + front-end UPEPKTPO UPEPTKTPO
None
? REST API
REST != CRUD over HTTP
REST != Return JSON with pretty URI
None
IUUQTXXXJOGPRDPNOFXT$36%3&45
IUUQTUXJUUFSDPNpFMEJOHTUBUVT
None
None
Network affordance
Information (+ affordance) NFOV SFMlPSEFSz
hypermedia affordance SFMlPSEFSz
Internet Programing
= Programing Internet
BEE B⒎PSEBODF