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
kinocoboy
March 08, 2022
Programming
0
520
画面に合わせたAPI設計をしたら残業が死ぬほど増えた話
kinocoboy
March 08, 2022
Tweet
Share
More Decks by kinocoboy
See All by kinocoboy
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
670
UIパフォーマンス最適化: AIを活用して100倍の速度向上を実現した事例
kinocoboy2
1
950
【ScrumFestNiigata2024】a11yを起点とした組織横断を完了するためにアジャイルチームにとって大切だったこと100選
kinocoboy2
0
630
JSConfjp2023 Storybook駆動開発の再現性と効率化
kinocoboy2
2
4k
新卒だったころの僕へ向けて
kinocoboy2
0
190
スクラムマスターを目指すためにギャルになってみた話
kinocoboy2
9
11k
NINNO Tech Fest #05 春の推し
kinocoboy2
0
280
Peacock#01 ソフトウェアアーキテクチャ的発想
kinocoboy2
0
260
雑談を因数分解したら雑な談話が増えた話
kinocoboy2
2
900
Other Decks in Programming
See All in Programming
そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日
mugitti9
2
3k
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
480
CSC509 Lecture 06
javiergs
PRO
0
240
10年もののAPIサーバーにおけるCI/CDの改善の奮闘
mbook
0
770
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
930
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
600
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
490
2025年版 サーバーレス Web アプリケーションの作り方
hayatow
23
25k
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
450
Pythonスレッドとは結局何なのか? CPython実装から見るNoGIL時代の変化
curekoshimizu
4
1.3k
実践AIチャットボットUI実装入門
syumai
7
2.5k
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
53
9k
Rails Girls Zürich Keynote
gr2m
95
14k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Typedesign – Prime Four
hannesfritz
42
2.8k
Code Review Best Practice
trishagee
72
19k
How to Ace a Technical Interview
jacobian
280
24k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Thoughts on Productivity
jonyablonski
70
4.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
How STYLIGHT went responsive
nonsquared
100
5.8k
Transcript
ը໘ʹ߹ΘͤͨAPIઃܭΛͨ͠Β ۀ͕ࢮ͵΄Ͳ૿͑ͨ KINOCOBOY
Hiroki Kinoshita Peacock Engineer Group ओ࠵ גࣜձࣾKUNO ϑϩϯτΤϯδχΞ(gcp, aws, angular,
nuxt) Twitter @kinocoboy2 SELF INTRODUCTION
Hiroki Kinoshita Peacock Engineer Group ओ࠵ גࣜձࣾKUNO ϑϩϯτΤϯδχΞ(gcp, aws, angular,
nuxt) Twitter @kinocoboy2 SELF INTRODUCTION Ϋϥυ × ϩέʔγϣϯϑϦʔ × ํҠॅ Ͱൃ৴தʂ
όουϊϋ
ۀΫι
ۀΫι ·ͣɺ݁
ۀΫι ୯ҰAPIͰNݸͷޮՌΛ࣋ͨͤΔͳ ·ͣɺ݁
ۀΫι ୯ҰAPIͰNݸͷޮՌΛ࣋ͨͤΔͳ ը໘߲͚ͩʹҙͯ͠ςʔϒϧఆٛΛܾΊΔͳ ·ͣɺ݁
ۀΫι ୯ҰAPIͰNݸͷޮՌΛ࣋ͨͤΔͳ ը໘߲͚ͩʹҙͯ͠ςʔϒϧఆٛΛܾΊΔͳ ֎෦APIΛ͏ͳΒɺຊʹجૅେࣄͩ ·ͣɺ݁
͋Μ·Γڭ͑ͯ͘Εͳ͍҉ ͦΜͳΜ͋ͬͨΓ·͑Ͱ͠ΐ…ͳͳΜ͚ͩͲɺͦͷཧ༝Λ͍ͬͯΔਓҙ֎ͱগͳ͍ɻ
͋Μ·Γڭ͑ͯ͘Εͳ͍҉ ͦΜͳΜ͋ͬͨΓ·͑Ͱ͠ΐ…ͳͳΜ͚ͩͲɺͦͷཧ༝Λ͍ͬͯΔਓҙ֎ͱগͳ͍ɻ ͜ͷجຊΛԡ͑ͣ͞ʹ࡞ΓࠐΜͰ͠·ͬͯɺൿͷλϨΛ࿉͍ͯ͠Δݱଟ͍
͋Μ·Γڭ͑ͯ͘Εͳ͍҉ ͦΜͳΜ͋ͬͨΓ·͑Ͱ͠ΐ…ͳͳΜ͚ͩͲɺͦͷཧ༝Λ͍ͬͯΔਓҙ֎ͱগͳ͍ɻ ͜ͷجຊΛԡ͑ͣ͞ʹ࡞ΓࠐΜͰ͠·ͬͯɺൿͷλϨΛ࿉͍ͯ͠Δݱଟ͍ ಛʹ֎෦APIΛར༻͢ΔͳΒɺΑΓجૅ͕େࣄʹͳΔɻ
͋Μ·Γڭ͑ͯ͘Εͳ͍҉ ͦΜͳΜ͋ͬͨΓ·͑Ͱ͠ΐ…ͳͳΜ͚ͩͲɺͦͷཧ༝Λ͍ͬͯΔਓҙ֎ͱগͳ͍ɻ ͜ͷجຊΛԡ͑ͣ͞ʹ࡞ΓࠐΜͰ͠·ͬͯɺൿͷλϨΛ࿉͍ͯ͠Δݱଟ͍ ಛʹ֎෦APIΛར༻͢ΔͳΒɺΑΓجૅ͕େࣄʹͳΔɻ ൿͷλϨ໓ӡಈͰ͢ɻ
جૅͦͷҰ
୯ҰAPIͰNݸͷޮՌΛ࣋ͨͤΔͳ
୯ҰAPIͰෳͷڍಈ ྫ͑ɺ
୯ҰAPIͰෳͷڍಈ ྫ͑ɺ ɾGETϝιουͷॲཧͳͷʹԿނ͔σʔλͷߋ৽ֻ͕͔Δɻ
୯ҰAPIͰෳͷڍಈ ྫ͑ɺ ɾGETϝιουͷॲཧͳͷʹԿނ͔σʔλͷߋ৽ֻ͕͔Δɻ ɾߋ৽ͱڞʹԿ͔ͷσʔλ͕Ճ͞ΕΔɻ
୯ҰAPIͰෳͷڍಈ ྫ͑ɺ ɾGETϝιουͷॲཧͳͷʹԿނ͔σʔλͷߋ৽ֻ͕͔Δɻ ɾߋ৽ͱڞʹԿ͔ͷσʔλ͕Ճ͞ΕΔɻ ϑΣΠϯτ ͍ͬͺ͍ೖΕͪΌ͏
୯ҰAPIͰෳͷڍಈ ྫ͑ɺ ɾGETϝιουͷॲཧͳͷʹԿނ͔σʔλͷߋ৽ֻ͕͔Δɻ ɾߋ৽ͱڞʹԿ͔ͷσʔλ͕Ճ͞ΕΔɻ ϑΣΠϯτ ͍ͬͺ͍ೖΕͪΌ͏ ਖ਼͍͠ಈ͖Λ ௐࠪ͠ͳ͍ͱ
୯ҰAPIͰෳͷڍಈ ྫ͑ɺ ɾGETϝιουͷॲཧͳͷʹԿނ͔σʔλͷߋ৽ֻ͕͔Δɻ ɾߋ৽ͱڞʹԿ͔ͷσʔλ͕Ճ͞ΕΔɻ ϑΣΠϯτ ͍ͬͺ͍ೖΕͪΌ͏ ਖ਼͍͠ಈ͖Λ ௐࠪ͠ͳ͍ͱ
୯ҰAPIͰෳͷڍಈ ୯ҰAPIͰఆ֎ͷڍಈ͕ೖͬͯ͘ΔͱɺAPI໊ʹରͯ͠ڍಈ͕ࣗ໌͡Όͳ͘ͳΔɻ
୯ҰAPIͰෳͷڍಈ ୯ҰAPIͰఆ֎ͷڍಈ͕ೖͬͯ͘ΔͱɺAPI໊ʹରͯ͠ڍಈ͕ࣗ໌͡Όͳ͘ͳΔɻ ݁Ռͱͯ͠
୯ҰAPIͰෳͷڍಈ ୯ҰAPIͰఆ֎ͷڍಈ͕ೖͬͯ͘ΔͱɺAPI໊ʹରͯ͠ڍಈ͕ࣗ໌͡Όͳ͘ͳΔɻ ݁Ռͱͯ͠ ௐࠪʹ৴͡ΒΕͳ͍͔͔࣌ؒΔ
୯ҰAPIͰෳͷڍಈ ୯ҰAPIͰఆ֎ͷڍಈ͕ೖͬͯ͘ΔͱɺAPI໊ʹରͯ͠ڍಈ͕ࣗ໌͡Όͳ͘ͳΔɻ ݁Ռͱͯ͠ ௐࠪʹ৴͡ΒΕͳ͍͔͔࣌ؒΔ ಈ࡞֬ೝͷқ্͕Δ
୯ҰAPIͰෳͷڍಈ ୯ҰAPIͰఆ֎ͷڍಈ͕ೖͬͯ͘ΔͱɺAPI໊ʹରͯ͠ڍಈ͕ࣗ໌͡Όͳ͘ͳΔɻ ݁Ռͱͯ͠ ௐࠪʹ৴͡ΒΕͳ͍͔͔࣌ؒΔ ಈ࡞֬ೝͷқ্͕Δ ίʔυεύήοςΟʔίʔυނɺίʔυௐࠪΩπ͍
୯ҰAPIͰෳͷڍಈ ୯ҰAPIͰఆ֎ͷڍಈ͕ೖͬͯ͘ΔͱɺAPI໊ʹରͯ͠ڍಈ͕ࣗ໌͡Όͳ͘ͳΔɻ ݁Ռͱͯ͠ ௐࠪʹ৴͡ΒΕͳ͍͔͔࣌ؒΔ ಈ࡞֬ೝͷқ্͕Δ ίʔυεύήοςΟʔίʔυނɺίʔυௐࠪΩπ͍ ࠷ऴతʹɺଐਓԽ → ແବͳ͕ര্͕Γ →
ͦͷ݁Ռ…
ݟࣄ ۀ ֬ఆ!!
୯ҰAPIͰෳͷڍಈ ղܾํ๏ɺ୯७໌շɻ
୯ҰAPIͰෳͷڍಈ ղܾํ๏ɺ୯७໌շɻ ༨ܭͳڍಈೖΕͳ͍ʂ
୯ҰAPIͰෳͷڍಈ ղܾํ๏ɺ୯७໌շɻ ༨ܭͳڍಈೖΕͳ͍ʂ GETऔಘɺPOSTొɺPUTߋ৽ɺDELETEআ͚ͩʂ
୯ҰAPIͰෳͷڍಈ ղܾํ๏ɺ୯७໌շɻ ༨ܭͳڍಈೖΕͳ͍ʂ GETऔಘɺPOSTొɺPUTߋ৽ɺDELETEআ͚ͩʂ ॲཧࣗ໌ʹʂ
୯ҰAPIͰෳͷڍಈ ղܾํ๏ɺ୯७໌շɻ ༨ܭͳڍಈೖΕͳ͍ʂ GETऔಘɺPOSTొɺPUTߋ৽ɺDELETEআ͚ͩʂ ݪҼՕॴ͕໌Β͔ ॲཧࣗ໌ʹʂ
୯ҰAPIͰෳͷڍಈ ղܾํ๏ɺ୯७໌շɻ ༨ܭͳڍಈೖΕͳ͍ʂ GETऔಘɺPOSTొɺPUTߋ৽ɺDELETEআ͚ͩʂ ݪҼՕॴ͕໌Β͔ ଐਓճආ ॲཧࣗ໌ʹʂ
جૅͦͷೋ
ը໘߲͚ͩʹҙͯ͠ ςʔϒϧఆٛΛܾΊΔͳ
ը໘ʹදࣔ͞ΕΔͷ͔͠ߟ͑ͳ͍ ը໘ʹදࣔ͞ΕΔͷΛDatabaseʹอଘ͓͚ͯ͠OK!
ը໘ʹදࣔ͞ΕΔͷ͔͠ߟ͑ͳ͍ ը໘ʹදࣔ͞ΕΔͷΛDatabaseʹอଘ͓͚ͯ͠OK! ͱ͍͏ൃ͔Β҆қʹը໘ઌߦͰ։ൃ͕ਐΉέʔε͕·ͩ·ͩଟ͍ɻ
ը໘ʹදࣔ͞ΕΔͷ͔͠ߟ͑ͳ͍ ը໘ʹදࣔ͞ΕΔͷΛDatabaseʹอଘ͓͚ͯ͠OK! ͱ͍͏ൃ͔Β҆қʹը໘ઌߦͰ։ൃ͕ਐΉέʔε͕·ͩ·ͩଟ͍ɻ ʢΘ͔ͬͯͳ͍σβΠφʔ͞Μ͕ओಋ͢Δͱͦ͏ͳΓ͕ͪʣ ֎෦APIΛΜͩΓ͢ΔͳΒɺΑΓը໘ʹҾͬுΒΕ͍͚ͯͳ͍ɻ
ը໘ઌߦͰߟ͑Δͱʁ Instagramతͳը໘ΛΠϝʔδͯ͠Έ·͠ΐ͏ ͍͍Ͷ Tags λΠτϧ ৄࡉText
ը໘ઌߦͰߟ͑Δͱʁ Instagramతͳը໘ΛΠϝʔδͯ͠Έ·͠ΐ͏ ߲Λฏ໘తʹଊ͑Δͱɺ ͍͍Ͷ Tags λΠτϧ ৄࡉText
ը໘ઌߦͰߟ͑Δͱʁ Instagramతͳը໘ΛΠϝʔδͯ͠Έ·͠ΐ͏ ߲Λฏ໘తʹଊ͑Δͱɺ λΠτϧ 1 : 1 1 :
1 ৄࡉςΩετ 1 : 1 ͍͍Ͷ 1 : N λά 1 : N ͍͍Ͷ Tags λΠτϧ ৄࡉText
ը໘ઌߦͰߟ͑Δͱʁ Instagramతͳը໘ΛΠϝʔδͯ͠Έ·͠ΐ͏ ߲Λฏ໘తʹଊ͑Δͱɺ λΠτϧ 1 : 1 1 :
1 ৄࡉςΩετ 1 : 1 ͍͍Ͷ 1 : N λά 1 : N ͍͍Ͷ Tags λΠτϧ ৄࡉText
ը໘ઌߦͰߟ͑Δͱʁ Instagramతͳը໘ΛΠϝʔδͯ͠Έ·͠ΐ͏ ߲Λฏ໘తʹଊ͑Δͱɺ λΠτϧ 1 : 1 1 :
1 ৄࡉςΩετ 1 : 1 ͍͍Ͷ 1 : N λά 1 : N ྫྷ੩ʹݟͨΒɺ ੑ࣭͕ҧ͏͜ͱ͕Θ͔Δ ͍͍Ͷ Tags λΠτϧ ৄࡉText
ը໘ઌߦͰߟ͑Δͱʁ Instagramతͳը໘ΛΠϝʔδͯ͠Έ·͠ΐ͏ ߲Λฏ໘తʹଊ͑Δͱɺ Ͱ͜ͷ··ٙΛ࣋ͨͣʹAPIԽ͢Δͱ…? ͍͍Ͷ Tags λΠτϧ ৄࡉText λΠτϧ
1 : 1 1 : 1 ৄࡉςΩετ 1 : 1 ͍͍Ͷ 1 : N λά 1 : N ྫྷ੩ʹݟͨΒɺ ੑ࣭͕ҧ͏͜ͱ͕Θ͔Δ
ը໘ઌߦͰߟ͑Δͱʁ API ΠϯλʔϑΣʔεɺ ͍͍Ͷ Tags λΠτϧ ৄࡉText Request: {
Title: string, Created: timestamp, detailText: text, Likes: number, Tags: string[], }
ը໘ઌߦͰߟ͑Δͱʁ API ΠϯλʔϑΣʔεɺ ͦͯ͠ςʔϒϧɺ ͍͍Ͷ Tags λΠτϧ ৄࡉText Request:
{ Title: string, Created: timestamp, detailText: text, Likes: number, Tags: string[], } ߘςʔϒϧ: { Title: string, Created: timestamp, detailText: text, Likes: number, Tags: string[], }
ը໘ʹදࣔ͞ΕΔͷ͔͠ߟ͑ͳ͍ ߘ ʹରͯ͠ ͍͍ͶΛՃͨ͠Γɺ TagΛՃ͠Α͏ͱ͢Δͱɺ ඞͣ ߘςʔϒϧࣗମʹߋ৽Λ͔͚ଓ͚ΔࣄʹͳΔɻ ಉҰςʔϒϧΛಉ࣌ଟൃతʹฤूૢ࡞͠Α͏ͱ͢ΔͱɺςʔϒϧϩοΫֻ͕͔Δɻ ςʔϒϧϩοΫ͕ੵΈॏͳΔͱɺγεςϜͷϘτϧωοΫʹɻ
γεςϜςετ࣌ʹ͜Ε͕໌Β͔ʹͳͬͯɺશ໘తʹෛՙվળʹΓग़͢ͱΠϯύΫτେɻ
ը໘ʹදࣔ͞ΕΔͷ͔͠ߟ͑ͳ͍ ߘ ʹରͯ͠ ͍͍ͶΛՃͨ͠Γɺ TagΛՃ͠Α͏ͱ͢Δͱɺ ඞͣ ߘςʔϒϧࣗମʹߋ৽Λ͔͚ଓ͚ΔࣄʹͳΔɻ ಉҰςʔϒϧΛಉ࣌ଟൃతʹฤूૢ࡞͠Α͏ͱ͢ΔͱɺςʔϒϧϩοΫֻ͕͔Δɻ ςʔϒϧϩοΫ͕ੵΈॏͳΔͱɺγεςϜͷϘτϧωοΫʹɻ
γεςϜςετ࣌ʹ͜Ε͕໌Β͔ʹͳͬͯɺશ໘తʹෛՙվળʹΓग़͢ͱΠϯύΫτେɻ
ը໘ʹදࣔ͞ΕΔͷ͔͠ߟ͑ͳ͍ ߘ ʹରͯ͠ ͍͍ͶΛՃͨ͠Γɺ TagΛՃ͠Α͏ͱ͢Δͱɺ ඞͣ ߘςʔϒϧࣗମʹߋ৽Λ͔͚ଓ͚ΔࣄʹͳΔɻ ಉҰςʔϒϧΛಉ࣌ଟൃతʹฤूૢ࡞͠Α͏ͱ͢ΔͱɺςʔϒϧϩοΫֻ͕͔Δɻ ςʔϒϧϩοΫ͕ੵΈॏͳΔͱɺγεςϜͷϘτϧωοΫʹɻ
γεςϜςετ࣌ʹ͜Ε͕໌Β͔ʹͳͬͯɺશ໘తʹෛՙվળʹΓग़͢ͱΠϯύΫτେɻ ͦͷ݁Ռ…
None
ղܾํ๏ ը໘Ͱ߲Λચ͍ग़͢ͷѱ͍͜ͱͰͳ͍ɻΉ͠Ζඞཁɻ
ղܾํ๏ ը໘Ͱ߲Λચ͍ग़͢ͷѱ͍͜ͱͰͳ͍ɻΉ͠Ζඞཁɻ Ͱɺ͚ͦͩ͜ҙͯ͠ςʔϒϧߏ·Ͱ࡞Γ࢝Ίͯ͠·͏ͱNG.
ղܾํ๏ ը໘Ͱ߲Λચ͍ग़͢ͷѱ͍͜ͱͰͳ͍ɻΉ͠Ζඞཁɻ Ͱɺ͚ͦͩ͜ҙͯ͠ςʔϒϧߏ·Ͱ࡞Γ࢝Ίͯ͠·͏ͱNG. ͖ͪΜͱը໘Λ͏ಈػɾಋઢɺσʔλͷੑ࣭ߟྀʹೖΕͯςʔϒϧఆٛAPIΛઃܭ͢Δ͜ ͱ͕େࣄɻ
ղܾํ๏ ը໘Ͱ߲Λચ͍ग़͢ͷѱ͍͜ͱͰͳ͍ɻΉ͠Ζඞཁɻ Ͱɺ͚ͦͩ͜ҙͯ͠ςʔϒϧߏ·Ͱ࡞Γ࢝Ίͯ͠·͏ͱNG. ͖ͪΜͱը໘Λ͏ಈػɾಋઢɺσʔλͷੑ࣭ߟྀʹೖΕͯςʔϒϧఆٛAPIΛઃܭ͢Δ͜ ͱ͕େࣄɻ ͦͷͨΊͷٕज़ߟ͑ํ͕ɺDDDICONIXͳͲͷυϝΠϯۦಈઃܭϢʔεέʔεۦಈઃܭʹ ֘͢Δɻ
ղܾํ๏ ࠓճͷ߹ͰࢲͩͬͨΒɺςʔϒϧΛ̏ͭ ʹ͚Δɻ ߘςʔϒϧ: { postId: string, Title: string, Created:
timestamp, detailText: text, } ͍͍Ͷ: { likeId: string, postId: string, } λά: { tagId: string Name: string }
ղܾํ๏ ࠓճͷ߹ͰࢲͩͬͨΒɺςʔϒϧΛ̏ͭʹ ͚Δɻ ͜ΕͰߋ৽λΠϛϯάରςʔϒϧΒ ͚ΔͷͰɺσουϩοΫͷස͕Լ͕Δ ͣɻ ߘςʔϒϧ: { postId: string,
Title: string, Created: timestamp, detailText: text, } ͍͍Ͷ: { likeId: string, postId: string, } λά: { tagId: string Name: string }
ղܾํ๏ ࠓճͷ߹ͰࢲͩͬͨΒɺςʔϒϧΛ̏ͭʹ ͚Δɻ ͜ΕͰߋ৽λΠϛϯάରςʔϒϧΒ͚ ΔͷͰɺσουϩοΫͷස͕Լ͕Δͣɻ ࠓճ͜ͷΑ͏ʹΘ͔Γ͍͢ྫ͕ͩɺຊ ͬͱೖΓΜͰ͍ΔͷͰ͔ͬ͠Γղ͕ඞཁ ʹͳΔɻ ߘςʔϒϧ: {
postId: string, Title: string, Created: timestamp, detailText: text, } ͍͍Ͷ: { likeId: string, postId: string, } λά: { tagId: string Name: string }
·ͱΊ
• APIࣗ໌Ͱ͋Δ͜ͱΛҡ࣋͢Δ͜ͱ • ௐࠪΛ؆ུʹɻ • ༻ײΛ໌Β͔ʹɻ ݁
• APIࣗ໌Ͱ͋Δ͜ͱΛҡ࣋͢Δ͜ͱ • ௐࠪΛ؆ུʹɻ • ༻ײΛ໌Β͔ʹɻ • σʔλͷੑ࣭ߏΛ͔ͬ͠ΓਪᏏ͢Δ͜ͱ • ϞσϦϯάDDD,
Iconix ༗ޮɻ ݁
• APIࣗ໌Ͱ͋Δ͜ͱΛҡ࣋͢Δ͜ͱ • ௐࠪΛ؆ུʹɻ • ༻ײΛ໌Β͔ʹɻ • σʔλͷੑ࣭ߏΛ͔ͬ͠ΓਪᏏ͢Δ͜ͱ • ϞσϦϯάDDD,
Iconix ༗ޮɻ • WebAPIΛ͏ͳΒɺͦͷੑ࣭ΛѲ্ͨ͠Ͱ ͓͏ɻ ݁
• APIࣗ໌Ͱ͋Δ͜ͱΛҡ࣋͢Δ͜ͱ • ௐࠪΛ؆ུʹɻ • ༻ײΛ໌Β͔ʹɻ • σʔλͷੑ࣭ߏΛ͔ͬ͠ΓਪᏏ͢Δ͜ͱ • ϞσϦϯάDDD,
Iconix ༗ޮɻ • WebAPIΛ͏ͳΒɺͦͷੑ࣭ΛѲ্ͨ͠Ͱ ͓͏ɻ ͜Ε͕ແࢹ͞ΕΔͱɺۀ͕૿͑ΔΑɻ ݁
Peacock Engineer Group • ڌ • ৽ׁݝԬࢢ • PEGͷత •
ҬձࣾɾࣾձਓֶੜͳͲͷ֞ࠜΛ͑ͯɺࣗ ༝ʹٕज़ྗΛߴΊ߹͑ΔίϛϡχςΟʹ!! • PEG͕औΓѻ͏ςʔϚ • ໌͔Β͑ΔTips!! • ӡӦελοϑਵ࣌ืूத!!
PEACOCK 03 ͷઃܭΛʮॳ৺ऀ͚ʯʹʮѹత͍͢͞Ͱ໌͔ ΒಋೖͰ͖ΔʯΛ͢Δ͕͍͍͋ͬͯΜ͡Όͳ͍͔ʁ 4/12 19:00 - 21:00 ΦϯϥΠϯ։࠵ʢCONNPASS )
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠