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
バックエンドが異なるサービスの差分を APIで吸収してみた話
Search
noripi
September 01, 2017
Technology
1
1.8k
バックエンドが異なるサービスの差分を APIで吸収してみた話
2017.09.01 retty tech nightのスライドです。
noripi
September 01, 2017
Tweet
Share
More Decks by noripi
See All by noripi
KotlinでAPIを型安全にした話
noripi
0
1.8k
Kotlinで型安全なSQLを書こう
noripi
0
900
サーバサイドKotlinのすすめ
noripi
0
12k
サーバーサイドKotlinのすすめ(仮)
noripi
0
790
Other Decks in Technology
See All in Technology
OAuthからOIDCへ ― 認可の仕組みが認証に拡張されるまで
yamatai1212
0
110
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
PHPからはじめるコンピュータアーキテクチャ / From Scripts to Silicon: A Journey Through the Layers of Computing Hiroshima 2025 Edition
tomzoh
0
140
防災デジタル分野での官民共創の取り組み (2)DIT/CCとD-CERTについて
ditccsugii
0
290
ガバメントクラウドの概要と自治体事例(名古屋市)
techniczna
2
240
20201008_ファインディ_品質意識を育てる役目は人かAIか___2_.pdf
findy_eventslides
2
640
Wasmのエコシステムを使った ツール作成方法
askua
0
160
[Keynote] What do you need to know about DevEx in 2025
salaboy
0
170
[Codex Meetup Japan #1] Codex-Powered Mobile Apps Development
korodroid
2
730
コンテキストエンジニアリング入門〜AI Coding Agent作りで学ぶ文脈設計〜
kworkdev
PRO
1
1k
"プロポーザルってなんか怖そう"という境界を超えてみた@TSUDOI by giftee Tech #1
shilo113
0
190
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
310
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.9k
Raft: Consensus for Rubyists
vanstee
140
7.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Become a Pro
speakerdeck
PRO
29
5.5k
Rails Girls Zürich Keynote
gr2m
95
14k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Code Review Best Practice
trishagee
72
19k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Designing Experiences People Love
moore
142
24k
Being A Developer After 40
akosma
91
590k
Transcript
όοΫΤϯυ͕ҟͳΔαʔϏεͷࠩΛ "1*Ͱٵऩͯ͠Έͨ 3FUUZ5FDI/JHIU /PSJZVLJ*TIJEB
͍͋ͭ͝͞"CPVUNF ɾੴాݑ/PSJZVLJ*TIJEB ɾ3FUUZ *OD ɾΞϓϦ༻"1* ,PUMJO+BWB ɾJ04 4XJGU0CKFDUJWF$ ɾւ֎͚αʔϏε
8FC%#ઃܭΠϯϑϥӡ༻ ɾલ৬ָఱ ɾഅ݊Λൢച͢ΔαʔϏεͰ8FCͷ։ൃɾӡ༻Λ୲ ɾࠃ͚
ຊͷ͓ ɾ3FUUZͷւ֎͚αʔϏε ɾݟ্͔͚ຊͱಉ͡αʔϏεͰΞϓϦಉҰ ɾͰόοΫΤϯυҟͳ͍ͬͯΔ ɾ"1*ͰࠩΛٵऩ͢ΔͨΊʹ͍ͬͯΔ͜ͱ ɾ·ͱΊ ɾࠩ"1*Ͱٵऩ͍ͯ͠Δ
3FUUZͷւ֎͚αʔϏε
3FUUZݱࡏຊΛؚΉΧࠃͰ αʔϏεల։த
3FUUZͷւ֎ల։ঢ়گ
3FUUZͷຊ͚αʔϏεͱւ֎͚αʔϏε ɾຊ͚αʔϏεͱւ֎͚αʔϏε ɾຊ͚ɿ8FC͓ΑͼΞϓϦͰαʔϏεల։த ɾւ֎͚ɿΞϓϦͰαʔϏεల։தʢҰ෦ػೳ੍ݶ͋Γʣ
3FUUZͷຊ͚αʔϏεͱւ֎͚αʔϏε ɾಉҰΞϓϦ͕ͩόοΫΤϯυҟͳΔ ຊ͚αʔϏε ւ֎͚αʔϏε ຊ༻%# ւ֎༻%# ຊ༻"1*αʔό ւ֎༻"1*αʔό
ຊ͚ͱւ֎͚ͰผʑʹόοΫΤϯυΛ༻ҙͨ͠ཧ༝ ɾຊʹ࠷దԽ͞Ε͍͗ͯ͢Δ ɾւ֎͚ʹαʔϏεΛ͢Δ࣌ͷ͜ͱͦ͜·Ͱఆ͞Ε͍ͯͳ͍ ɾ%#Λ࠶ઃܭ͢Δ͍͍ػձ ɾӡ༻ن͕େ͖͘ͳ͖ͬͯͨͷͰؾܰʹεΩʔϚมߋͰ͖ͳ͍ ɾҰํͰઃܭΛݟ͍ͨ͠Օॴঃʑʹ૿͖͍͑ͯͯΔ ɾຊʹͳΔ͘ӨڹΛग़ͨ͘͠ͳ͍ ɾຊͱւ֎Λൺֱͨ͠ͱ͖ͷαʔϏεنͷ؍͔Β ɾ࣌ࠁʹ࣌ؒՃࢉ͢ΔϩδοΫ͕ਵॴʹຒΊࠐ·Ε͍ͯΔ
ͱ͍͑ ͦΜͳ͜ͱΛߟ͑ͳ͕ΒΞϓϦΛ࡞Δͱ
ͭΒͦ͏ʜ
ͦ͏ͳΒͳ͍Α͏ʹ ͳΔ͘"1*ͰࠩΛٵऩ͍ͯ͠·͢
"1*ͰࠩΛٵऩ͢ΔͨΊʹ͍ͬͯΔ͜ͱ
͍ͬͯΔ͜ͱ ɾ"1*ͷܗࣜΛ౷Ұ͢Δ ɾΤϯυϙΠϯτΛ౷Ұ͢Δ ɾ)551ϝιου ɾύϥϝʔλ ɾฦΓܗࣜ ɾίϯςϯπλΠϓ
"1*ͷશମઃܭ ɾ+"934ʹଇΓɺ+BWBͷΫϥεϝιουͰ ɹΤϯυϙΠϯτΛఆٛ ɾύεɺ)551ϝιουɺฦΓͷܗࣜɺίϯςϯπλΠϓ
"1*ͷશମઃܭ ɾσʔλΛΓऔΓ͢ΔྲྀΕ %"0 Ϟσϧ Ϧιʔε ΞϓϦ (&5SFTUBVSBOUT\JE^ σʔλετϨʔδ
"1*
ڞ௨Խ͍ͨ͠෦ͱͦ͏Ͱͳ͍෦ ɾϦιʔεڞ௨Խ͍ͨ͠ %"0 Ϟσϧ Ϧιʔε ΞϓϦ (&5SFTUBVSBOUT\JE^ ɾ֎͖ͷΠϯλϑΣʔε͕ఆٛ͞Ε͍ͯΔ
σʔλετϨʔδ "1*
ڞ௨Խ͍ͨ͠෦ͱͦ͏Ͱͳ͍෦ ɾͦΕҎ֎ͷ෦ڞ௨Խ͕͍͠ %"0 Ϟσϧ Ϧιʔε ΞϓϦ (&5SFTUBVSBOUT\JE^ "1*
ɾσʔλετϨʔδʹ͍ۙͳͷͰڞ௨Խͯ͋͠·Γҙຯ͕ͳ͍
ڞ௨Խ͍ͨ͠෦ͱͦ͏Ͱͳ͍෦ ɾ%"0ͷ෦ΛΠϯλϑΣʔεԽͯ͠நԽ Ϟσϧ Ϧιʔε ΞϓϦ (&5SFTUBVSBOUT\JE^ %"0 %"0
Ϟσϧ "1*
ڞ௨Խ͍ͨ͠෦ͱͦ͏Ͱͳ͍෦ ɾ%"0ͷ෦ΛΠϯλϑΣʔεԽͯ͠நԽ
"1*ͷܗࣜΛ౷Ұ͢Δ ɾϦιʔεΫϥεܧঝͰϩδοΫΛڞ௨Խ
ΤϯυϙΠϯτΛ౷Ұ͢Δ ຊ༻%# ւ֎༻%# ຊ༻"1*αʔό ւ֎༻"1*αʔό ɾΤϯυϙΠϯτΛ౷Ұ͠ͳ͍ͱɺΞϓϦଆͰ ɹͲͬͪʹߦ͔͘அ͠ͳ͍ͱ͍͚ͳ͘ͳΔ ຊ͚αʔϏε
ւ֎͚αʔϏε ?
ΤϯυϙΠϯτΛ౷Ұ͢Δ ຊ༻%# ւ֎༻%# ຊ༻"1*αʔό ւ֎༻"1*αʔό ɾήʔτΣΠΛ͏͜ͱʹΑͬͯຊ༻ͱւ֎༻ ɹͷΤϯυϙΠϯτΛ౷Ұ ຊ͚αʔϏε
ւ֎͚αʔϏε
ΤϯυϙΠϯτΛ౷Ұ͢Δ ຊ༻%# ւ֎༻%# ຊ༻"1*αʔό ւ֎༻"1*αʔό ɾήʔτΣΠ͕શڥͷηογϣϯΛཧͯ͠ ɹదͳํʹৼΓ͚ ຊ͚αʔϏε
ւ֎͚αʔϏε ຊ༻"1*αʔό ηογϣϯ ۭؒ
౷Ұ͞Εͨ݁Ռ ɾݟ্͔͚ͭͷ"1*Ͱຊւ֎ͷαʔϏεΛ ɹ͏͜ͱ͕Ͱ͖ΔΑ͏ʹͳΔ ຊ͚αʔϏε ւ֎͚αʔϏε "1*
·ͱΊ
·ͱΊ ɾຊΛؚΊΧࠃʹαʔϏεల։த ɾΞϓϦ͕ͭͩόοΫΤϯυҟͳΔ ɾΞϓϦͷϩδοΫ͕ͭΒ͘ͳΒͳ͍Α͏ʹ"1*͕ؤு͍ͬͯ·͢ ɾ"1*͕͍ͬͯΔ͜ͱ ɾຊ͚ͷΤϯυϙΠϯτͱւ֎͚ͷΤϯυϙΠϯτʹܧঝؔ ɹΛ࣋ͨͤͯ֎͖ͷΠϯλϑΣʔεΛἧ͍͑ͯΔ ɾखલʹήʔτΣΠΛஔ͍ͯɺҧ͍Λҙࣝͤͣʹຊ͚ͱւ֎͚ ɹΛ͍͚Ͱ͖ΔΑ͏ʹ͍ͯ͠Δ
ɾࠓޙ͍͖͍ͬͯͨ͜ͱ ɾݱࡏւ֎͚ͷαʔϏε౦ژϦʔδϣϯ͔Βఏڙ ɾࠓޙԤถݍʹαʔϏεఏڙ͍ͯ͘͠ՄೳੑΛ౿·͑ͯϚϧνϦʔδϣϯ ɹରԠΓ͍ͨ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ