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
技術選定で失敗したはなし
Search
atomiyama
April 04, 2019
Programming
0
1.3k
技術選定で失敗したはなし
atomiyama
April 04, 2019
Tweet
Share
More Decks by atomiyama
See All by atomiyama
SchemaDrivenDevelopment
atomiyama
0
460
Rustでgemを作ろう
atomiyama
0
1.6k
ffi & native extension
atomiyama
0
260
はじめてのDocker
atomiyama
0
120
Other Decks in Programming
See All in Programming
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
310
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
300
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
4.3k
AIで開発はどれくらい加速したのか?AIエージェントによるコード生成を、現場の評価と研究開発の評価の両面からdeep diveしてみる
daisuketakeda
1
430
SQL Server 2025 LT
odashinsuke
0
120
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
340
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
140
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
120
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
15
4.4k
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.4k
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
5k
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
38k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Building Applications with DynamoDB
mza
96
6.9k
Designing for humans not robots
tammielis
254
26k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
690
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.1k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
sira's awesome portfolio website redesign presentation
elsirapls
0
110
My Coaching Mixtape
mlcsv
0
21
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Discover your Explorer Soul
emna__ayadi
2
1k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
180
Transcript
Copyright 2018 Studyplus, Inc. All Rights Reserved. ٕज़બఆͰࣦഊ͓ͨ͠ͳ͠ Akifumi Tomiyama
/ Studyplus Inc. 2019.4.4 @දࢀಓ.rb#45
ࣗݾհ ࢁথ࢙ Akifumi Tomiyama atomiyama atomiyama_1216 2017.9 Rubyडୗ։ൃ 2018.9 ελσΟϓϥεגࣜձࣾ
For Schoolࣄۀ෦ αʔόʔαΠυΤϯδχΞ ✎ Ruby, Railsྺ 2
4UVEZQMVTGPS4DIPPMɺڭҭػֶ͚ؔशཧαʔϏεͰ͢ɻ ੜెͷʑͷྗΛɺؾ͖ͮɺ๙ΊΔػೳΛଟἧ͍͑ͯ·͢ɻ 4/4ͷΑ͏ͳૢ࡞ײͰɺ୭Ͱ͙͢ʹ͍͡ΊΒΕ·͢ɻ ઌੜ͕ੜెΛ๙ΊΔػձΛ࠷େԽ͢Δɺֶशक़ͷ৽͍͠ελϯμʔυ
APIͷυΩϡϝϯςʔγϣϯͲ͏ͯ͠·͔͢ʁ
swagger2.0Ͱࣦഊͨ͠
ࠓͷ͓ ✎ αʔϏεͷϦχϡʔΞϧͰϑϩϯτΛಠཱͤ͞Δͱ͖ RailsͷAPIαʔόʔԽ ✎ υΩϡϝϯςʔγϣϯʹswagger2.0Λಋೖ͠swagger wayΛ֎ΕͯڧҾʹߦͬͨΒਏ͞ΛੜΜͩ
എܠ Monolithic Rails App SoE (Client App) SoR (Rails API)
✎ SPAʹͯ͠ը໘ભҠΛૣ͍ͨ͘͠ ✎ σβΠφʔ͕ೖͬͨͷͰUIͷ৽ ✎ Ϟμϯͳٕज़Ͱ͔ͬ͜Α͍ͨ͘͠
2018/10ࠒ ✎ swagger2.0 ✎ swagger-blocks ✎ swagger_ui_engine ✎ apivore ࠓ
✎ OpenAPI3.0 ✎ swagger-editor ✎ json_refs ✎ committeeʢ3.0ରԠ͋Γ͕ͱ͏ʣ
swaggerΛॻ͍͓ͯ͘ͱخ͍͜͠ͱ ✎ ϞοΫαʔόʔͭ͘Δͷ؆୯ ✎ ΫϥΠΞϯτ։ൃऀͱͷԆΛ࠷খԽͰ͖Δ ✎ υΩϡϝϯτͱ࣮ͷണʹؾ͚ͮΔ ✎ ςετָ͕͘͢͝ʹͳΔ
swagger2.0ʹͨ͠ཧ༝ ✎ swagger2.0पΓͷgem͕๛ͩͬͨ ✎ ࣌openapi3.0ʹରԠͨ͠ςετπʔϧ͕ͳ͔ͬͨ ✎ controllerͷதʹDSLͰॻ͘ܗ͕Πέ͍ͯΔͱࢥͬͯͨ ✎ ωοτ্Ͱͷใ2.0ͷ΄͏͕ଟ͔ͬͨ
✎ ܕ͕Ұ͔ͭ͠ఆٛͰ͖ͳ͍ ✎ formDataͰෳϑΝΠϧΞοϓϩʔυΛදݱͰ͖ͳ͍ ࣗલͰnullΛ֦ு͢ΔͳͲ…
#
✎ swagger-uiͰεΩʔϚ͕දݱ͞Ε͍ͯͳ͍ ✎ ϥΠϒϥϦ͕֦ு͞ΕͨεΩʔϚΛೝࣝͰ͖ͳͯ͘ਖ਼ ͘͠ςετ͞Εͳ͍ ແཧʹίʔυͰղܾ͠Α͏ͱͨ͠Β
υΩϡϝϯτͱ࣮ʹဃ͕…
OpenAPI3.0ͳΒͰ͖ͨͷʹ…
✎ ܕ͕Ұ͔ͭ͠ఆٛͰ͖ͳ͍ ✎ ෳϑΝΠϧͷྻΛදݱͰ͖ͳ͍ ✎ nullable ✎ requestBody ղܾ
None
͖ͬ͢Γ
υΩϡϝϯτͱ࣮ͷဃ͕͛Δ
ΈΜͳ͋͠Θͤ$
ڭ܇ ✎ ٕज़બఆ৻ॏʹߦ͍·͠ΐ͏ ✎ ༷͕ϥΠϒϥϦ,ϑϨʔϜϫʔΫ͔ΒΈग़ͯ͠͠· ͏Α͏ͳ࣌ίʔυϨϕϧͰղܾ͢Δͷྑ͘ͳ͍ ✎ ຊʹͦͷٕज़Ͱߦͬͯେৎͳͷ͔νʔϜͰٞΛ͠ ͳ͓͢͜ͱ͕େࣄ
Ҏલ՝͍ͬͺ͍͋Δ͚Ͳ ✎ AMSͱswaggerͷ ✎ ymlϑΝΠϧͷཧ ✎ υΩϡϝϯτߋ৽͔Βެ։ɼ։ൃϑϩʔ
ͱΓ͋͑ͣ͠Β͍͚ͬͯͦ͘͏$
We’re Hiring! ΤϯδχΞืूத https://info.studyplus.co.jp/recruit
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠