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
Swagger Codegenで楽にSwiftのModelを生成する / Easily gen...
Search
Naoki / ばくぷー (ᐡ• ﻌ • ᐡ)。
May 22, 2023
Programming
0
580
Swagger Codegenで楽にSwiftのModelを生成する / Easily generate Swift Models with Swagger Codegen
DeNA×STORES×ラクマ iOS Meetup!!
2023-05-22 19:00-
https://connpass.com/event/283989/
Naoki / ばくぷー (ᐡ• ﻌ • ᐡ)。
May 22, 2023
Tweet
Share
More Decks by Naoki / ばくぷー (ᐡ• ﻌ • ᐡ)。
See All by Naoki / ばくぷー (ᐡ• ﻌ • ᐡ)。
5分で分かるSwift OpenAPI Generatorの使い方 / How to use Swift OpenAPI Generator in 5 minutes
naokimrmt
1
630
Other Decks in Programming
See All in Programming
Amazon Qを使ってIaCを触ろう!
maruto
0
400
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
540
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
120
Remix on Hono on Cloudflare Workers
yusukebe
1
280
Better Code Design in PHP
afilina
PRO
0
120
エンジニアとして関わる要件と仕様(公開用)
murabayashi
0
280
cmp.Or に感動した
otakakot
2
140
Contemporary Test Cases
maaretp
0
130
AWS IaCの注目アップデート 2024年10月版
konokenj
3
3.3k
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
230
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Unsuck your backbone
ammeep
668
57k
Adopting Sorbet at Scale
ufuk
73
9.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
The Pragmatic Product Professional
lauravandoore
31
6.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Six Lessons from altMBA
skipperchong
27
3.5k
Rails Girls Zürich Keynote
gr2m
94
13k
Transcript
Swagger Codegenで 楽にModelを生成する @naoki-mrmt DeNA×STORES×ラクマ iOS Meetup!!
Naoki / ばくぷー (• ﻌ • )。 & @naoki_mrmt &
株式会社マンハッタンコード 22卒 & Swift ( / Kotlin / Flutter ) & No beer, no life.
Contents Swagger Codegenとは? Swaggerとは? 事前準備 Modelの生成 まとめ 1 2 3
4 5
Contents Swagger Codegenとは? Swaggerとは? 事前準備 Modelの生成 まとめ 1 2 3
4 5
1 Swagger Codegenとは? OpenAPI仕様に沿って記述されたAPI 仕様書をインプットとしてソースコー ドを生成するツール v SwiftだけでなくDartやKotlinなど 多くの言語で出力することができる
Contents Swagger Codegenとは? Swaggerとは? 事前準備 Modelの生成 まとめ 1 2 3
4 5
2 Swaggerとは? APIの設計と文書化を支援するためのオープンソースのツール Open API Editor UI Codegen REST APIを定義
するための標準仕 様 API仕様を書くた めのエディタ - yaml/jsonで記述 API仕様からド キュメントを生成 するツール API仕様から コードを生成す るツール
Contents Swagger Codegenとは? Swaggerとは? 事前準備 Modelの生成 まとめ 1 2 3
4 5
3 事前準備 8 Swagger Codegenの導" brew install swagger-codege& 8
Swaggerファイル
3 事前準備 Swaggerファイルがない場合" A 作るしかない.. A ただ、yamlは書きたくない...
3 事前準備 Stoplight Studiv i OpenAPIのyamlファイルの作成と管理ができるGUIエディ4 i 直接yamlファイルの編集も可 i GUIでyamlを作成してmock
serverの立ち上げる一連の流れがさっとできE i StoplightのPrismを使うと簡単
3 事前準備
3 事前準備
3 事前準備
3 事前準備
Contents Swagger Codegenとは? Swaggerとは? 事前準備 Modelの生成 まとめ 1 2 3
4 5
4 Modelの生成 E コマンドを叩くとファイルが生成 され# E swagger-codegen generate -i {yaml
file name} --lang swift5 -o output
4 Modelの生成 B 以下のディレクトリにModelが 生成され$ B SwaggerClient/Classes/ Swaggers/Models
4 Modelの生成 注意Y yaml上のModel名に依存してstruct名などがつけられ$ Codableで生成され$ 変数名などを適宜修正する必要があるかも
Contents Swaggerとは? Swagger Codegenとは? 事前準備 Modelの生成 まとめ 1 2 3
4 5
5 まとめ Swagger Codegenで楽にModelが作れる 自動生成だけあって手直しは必要 yamlがなくてもGUIで作ることができる r コマンドを打つだけで生成される r Codableで生成されるなど
r Stoplight Studio
Thank you for your attention.