Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Backends for Frontends を適用した話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
えぐ
February 02, 2017
1.2k
1
Share
Backends for Frontends を適用した話
Shibuya.apk #12で発表した内容
えぐ
February 02, 2017
More Decks by えぐ
See All by えぐ
KotshiからMoshi-codegenに 乗り換えた経緯
egugue
0
2.5k
Annotationを利用した現在時刻のテスト
egugue
0
880
エンジニアにしてもよいこと エンジニアからお願いしたいこと
egugue
0
180
コードで事前条件を表明する
egugue
3
3.8k
FlexboxLayoutの紹介
egugue
2
340
Robolectricの @Configを共通化する方法
egugue
0
870
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Navigating Weather and Climate Data
rabernat
0
170
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
270
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Cost Of JavaScript in 2023
addyosmani
55
9.8k
GraphQLとの向き合い方2022年版
quramy
50
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
What's in a price? How to price your products and services
michaelherold
247
13k
Transcript
Backends for Frontends Λద༻ͨ͠ Shibuya.apk #12 2017/2/2
ࣗݾհ • ֎ࢁ ࣏༝ • @duane0728 • Ϡϑʔגࣜձࣾ
Α͋͘ΔΞʔΩςΫνϟ
Android iOS PC API API
• ඞཁͳ͍ใ·Ͱऔಘͯ͠͠·͏ • ௨৴ྔ͕ແବʹ૿͑Δ • ෳͷAPIίʔϧ͕ൃੜ • ΞϓϦͷෳࡶ͞ •
όοςϦʔͷফඅ • ΞϓϦͱόοΫΤϯυͷڑ͕͍ۙ • όοΫΤϯυͷमਖ਼ͷӨڹ͕ड͚͍͢
Backends for Frontends
• ϚΠΫϩαʔϏεΞʔΩςΫνϟͷຊ Ͱհ͞Ε͍ͯΔύλʔϯ • SoundCloudͳͲ͕ద༻͍ͯ͠Δ
Android iOS PC Android༻BFF iOS༻BFF PC༻BFF API API
Android iOS PC ϞόΠϧ༻BFF PC༻BFF API API
࣮ࡍʹࣗͷαʔϏεʹ ద༻ͨ͠Β͜͏ͳͬͨ
Android iOS PC શ෦༻BFF API API ਖ਼֬ʹBFFͱݴΘͳ͍Α͏Ͱ͢
σόΠε͝ͱͷBFFΛ༻ҙ͠ͳ͔ͬͨཧ༝ • ਓ͕Γͳ͔ͬͨ • σόΠεʹΑΔࠩҟ͕͋·Γͳ͔ͬͨ
• σόΠε͝ͱʹڞ௨ͳॲཧΛαʔόʔʹ࣋ͨͤΒΕΔ • ΞϓϦͷίʔυʹखΛ͍ΕͣʹΞϓϦέʔγϣϯݻ༗ϩδοΫΛमਖ਼Ͱ͖Δ • ΞϓϦͷίʔυʹखΛೖΕͣA/BςετΛ࣮ࢪͰ͖Δ • αʔόʔ͕૿͑ӡ༻ίετ͕૿͑Δ Pros Cons
• αʔόʔ͕૿͑ӡ༻ίετ͕૿͑Δ Pros Cons ಠࣗͷΈΛར༻͍ͯ͠ΔͨΊ • σόΠε͝ͱʹڞ௨ͳॲཧΛαʔόʔʹ࣋ͨͤΒΕΔ • ΞϓϦͷίʔυʹखΛ͍ΕͣʹΞϓϦέʔγϣϯݻ༗ϩδοΫΛमਖ਼Ͱ͖Δ •
ΞϓϦͷίʔυʹखΛೖΕͣA/BςετΛ࣮ࢪͰ͖Δ
ΞϓϦΤϯδχΞͱֶͯ͠Μͩ͜ͱ • Clean Architecture͕ৗʹϕετͷઃܭͩͱݶΒͳ͍ • Λ͚Δखஈཧతͳ͚ͩͰͳ͍ • ΞϓϦͷΞʔΩςΫνϟ͚ͩʹؔ৺͕͍͍ͬͯͨ
͋Γ͕ͱ͏͍͟͝·ͨ͠
ࢀߟࢿྉ • Pattern: Backends For Frontends - https://goo.gl/XQmird • BFF
@ SoundCloud - https://goo.gl/93L3a4 • ϚΠΫϩαʔϏεΞʔΩςΫνϟʹ͓͚ΔAPIίʔϧͷํͱHTMLϨϯμϦϯά - https://goo.gl/4sfLNM