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
えぐ
February 02, 2017
1
1.1k
Backends for Frontends を適用した話
Shibuya.apk #12で発表した内容
えぐ
February 02, 2017
Tweet
Share
More Decks by えぐ
See All by えぐ
KotshiからMoshi-codegenに 乗り換えた経緯
egugue
0
2.4k
Annotationを利用した現在時刻のテスト
egugue
0
870
エンジニアにしてもよいこと エンジニアからお願いしたいこと
egugue
0
170
コードで事前条件を表明する
egugue
3
3.5k
FlexboxLayoutの紹介
egugue
2
320
Robolectricの @Configを共通化する方法
egugue
0
840
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
16
920
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
41
7.3k
GitHub's CSS Performance
jonrohan
1031
460k
BBQ
matthewcrist
89
9.7k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Become a Pro
speakerdeck
PRO
28
5.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
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