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
Let’s contributeOpenAPI Generator
Search
yutaka0m
February 05, 2020
Programming
0
58
Let’s contribute OpenAPI Generator
yutaka0m
February 05, 2020
Tweet
Share
More Decks by yutaka0m
See All by yutaka0m
AtlantisによるTerraformコードの継続的ApplyとTerraformによるAtlantis環境の構築
yutaka0m
0
220
Other Decks in Programming
See All in Programming
Elm 0.19.0 Changes
bkuhlmann
0
510
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
690
業務ツールとして使うPostman
msys75
0
110
slow types ってなんだろう?
karad
0
120
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
170
Next.js App Router
quramy
12
2k
禅の心を手に入れよ
eltociear
1
410
Snowflakeで眠ったデータを起こそう!
estie
0
150
Hanami and htmx
bkuhlmann
0
230
Scalable Customer Journey Orchestration (CJO)
lewuathe
0
440
Direct Style Effect Systems The Print[A] ExampleA Comprehension Aid
philipschwarz
PRO
0
150
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
1.1k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
BBQ
matthewcrist
80
8.8k
Design by the Numbers
sachag
274
18k
Embracing the Ebb and Flow
colly
80
4.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
12
1k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Stop Working from a Prison Cell
hatefulcrawdad
267
19k
Designing for humans not robots
tammielis
247
25k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
660
120k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
Transcript
-FU`TDPOUSJCVUF 0QFO"1*(FOFSBUPS
త ʮࢲ0QFO"1*(FOFSBUPSʹ13ग़ͤΔ͔ʁʯ ͱࢥͬͯΒ͑Δ͜ͱɻ
0QFO"1*(FOFSBUPSͱ 0QFO"1*(FOFSBUPSBMMPXTHFOFSBUJPOPG"1*DMJFOU MJCSBSJFT 4%,HFOFSBUJPO TFSWFSTUVCT EPDVNFOUBUJPO BOEDPOGJHVSBUJPOBVUPNBUJDBMMZHJWFOBO0QFO"1*4QFD W W
ੜͷΈ
0QFO"1*ΛಡΈࠐΉ Proper&es[ Property( name = “customerCode”, type = string ),
Property( name = “customerFirstName”, type = string ) ] OpenAPIを変数 として読み込む(Java) テンプレートに適⽤ OpenApi Generator- > codegen OpenApi
ςϯϓϨʔτʹΊࠐΜͰग़ྗ data class {{classname}} ( {{#requiredVars}} {{>dataClassReqVar}}{{^-last}}, {{/- last}}{{/requiredVars}}{{#hasRequir ed}}・・・・
テンプレートをもとに 書き出し mustache
ࣅ͍ͯΔͷ KTPOTQSJOHCPPUUIZNFMFBG IUNM
Γ͔ͨͬͨ͜ͱ
0QFO"1* %FQSFDBUFEQSPQFSUJFT
LPUMJOTQSJOHΛࣗಈੜ
!%FQSFDBUFE lz ΛՃ͍ͨ͠ʂ
ίϛοτΛ͍ͬͯ͘ελΠϧ
BEE%FQSFDBUFEJOLPUMJOEBUB$MBTT $PNNJU IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSQVMMDPNNJUTCDCDEBEFFD BGBEBCFC
ςϯϓϨʔτΛमਖ਼͢Δ data class {{classname}} ( {{#requiredVars}} {{>dataClassReqVar}}{{^-last}}, {{/- last}}{{/requiredVars}}{{#hasRequir ed}}・・・・
テンプレートをもとに 書き出し
.VTUBDIFςϯϓϨʔτ ςϯϓϨʔτ͍ͬͺ͍͋Δ IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSUSFFNBTUFSNPEVMFTPQFOBQJ HFOFSBUPSTSDNBJOSFTPVSDFT
EBUBDMBTTͷςϯϓϨʔτ
EBUBDMBTTʹݟ͑ͳ͘ͳ͍
গ͠ղઆ͢Δ ˠ EBUB$MBTT0QU7BS
EBUB$MBTT0QU7BSNVTUBDIF !+TPO1SPQFSUZͷ্ʹ!%FQSFDBUFEΛ͍͍ͤ IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSQVMMDPNNJUTCDCDEBEFFD BGBEBCFC
BEEEFQSFDBUFEJO$PEFHFO1SPQFSUZ $PNNJU IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSQVMMDPNNJUTFFGCDGDBEEB CFEDB
DPEFHFOमਖ਼͢Δ Proper&es[ Property( name = “customerCode”, type = string ),
Property( name = “customerFirstName”, type = string ) ] OpenAPIを変数 として読み込む(Java) テンプレートに適⽤ OpenApi Generator- > codegen
ίʔυΛݟͯΈΔ IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSCMPCNBTUFSNPEVMFTPQFOBQJ HFOFSBUPSTSDNBJOKBWBPSHPQFOBQJUPPMTDPEFHFO$PEF HFO1SPQFSUZKBWB DPEFHFO$PEFHFO1SPQFSUZKBWB
EFQSFDBUFEΛͯ͋͛͠Δ $PEFHFO1SPQFSUZʹEFQSFDBUFEͷม͕ͳ͍ͷͰه͢Δ IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSQVMMDPNNJUTFFGCDGDBEEB CFEDB
TFUQSPQFSUZEFQSFDBUFE DPNNJU IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSQVMMDPNNJUTFBEBFD EBFCDCGFD
Λೖ͢Δ $PEFHFO1SPQFSUZKBWBʹEFQSFDBUFEΛՃ͕ͨ͠ɺ %FQSFDBUFEʹΛೖΕΔ෦Λॻ͍͍ͯͳ͍ʂ ˠৗʹۭ OVMM
%FGBVMU$PEFHFOKBWB IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSCMPCNBTUFSNPEVMFTPQFOBQJ HFOFSBUPSTSDNBJOKBWBPSHPQFOBQJUPPMTDPEFHFO%FGB VMU$PEFHFOKBWB- 0QFO"1*ΛಡΈࠐΜͰɺ1SPQFSUZΛੜ͍ͯ͠Δͱ͜Ζ
%FQSFDBUFEΛηοτ͢Δ IUUQTHJUIVCDPN0QFO"1*5PPMTPQFOBQJ HFOFSBUPSQVMMDPNNJUTFBEBFD EBFCDCGFD
͓͠·͍
None
None
త ʮࢲ0QFO"1*(FOFSBUPSʹ13ग़ͤΔ͔ʁʯ ͱࢥͬͯΒ͑Δ͜ͱɻ