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
inady
February 05, 2020
Programming
0
69
Let’s contribute OpenAPI Generator
inady
February 05, 2020
Tweet
Share
More Decks by inady
See All by inady
atama plus株式会社 HerokuからAWSへの移行
inady
0
160
AtlantisによるTerraformコードの継続的ApplyとTerraformによるAtlantis環境の構築
inady
0
230
Other Decks in Programming
See All in Programming
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
2
15k
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
380
AIともっと楽するE2Eテスト
myohei
8
2.9k
オンコール⼊⾨〜ページャーが鳴る前に、あなたが備えられること〜 / Before The Pager Rings
yktakaha4
1
890
生成AI時代のコンポーネントライブラリの作り方
touyou
1
260
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
310
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
270
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
1.1k
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
TypeScriptでDXを上げろ! Hono編
yusukebe
3
720
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
2
360
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Producing Creativity
orderedlist
PRO
346
40k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
KATA
mclloyd
30
14k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
108
19k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Visualization
eitanlees
146
16k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
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ग़ͤΔ͔ʁʯ ͱࢥͬͯΒ͑Δ͜ͱɻ