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
71
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
190
AtlantisによるTerraformコードの継続的ApplyとTerraformによるAtlantis環境の構築
inady
0
230
Other Decks in Programming
See All in Programming
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
450
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
7
4.3k
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
310
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
1.1k
AtCoder Conference 2025
shindannin
0
900
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
1
850
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
180
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
6
1.7k
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
930
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
210
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
37k
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
330
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Automating Front-end Workflow
addyosmani
1371
200k
Embracing the Ebb and Flow
colly
88
4.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
780
Building Applications with DynamoDB
mza
96
6.9k
Everyday Curiosity
cassininazir
0
120
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
44
From π to Pie charts
rasagy
0
100
Un-Boring Meetings
codingconduct
0
170
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
58
41k
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ग़ͤΔ͔ʁʯ ͱࢥͬͯΒ͑Δ͜ͱɻ