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 generate Swift Models with Swagger Codegen
Search
Naoki / ばくぷー (ᐡ• ﻌ • ᐡ)。
May 22, 2023
Programming
0
510
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
540
Other Decks in Programming
See All in Programming
Clean Architecture by TypeScript & NestJS
ryounasso
0
150
CSC307 Lecture 09
javiergs
PRO
1
500
Harnessing Large Language Models for Training-free Video Anomaly Detection
tereka114
1
1.3k
CSC307 Lecture 07
javiergs
PRO
0
220
Composing an API the *right* way (Droidcon Berlin 2024)
zsmb
1
450
さきがけから振り返るアーキテクチャ刷新 / Reflecting on the Architectural Renewal from the Vanguard
nrslib
2
770
みんなのオブザーバビリティプラットフォームを作ってるんだがパフォーマンスがやばい #mackerelio #srenext
ne_sachirou
0
370
日付と正規化
megmogmog1965
0
140
Webエディタライブラリ 「CodeMirror」から学ぶ Webアプリ開発のテクニック
ryosukeigarashi
0
250
12年前の『型システム入門』翻訳の思い出話
mame
11
1.2k
20240706_CDKConf
takuyay0ne
0
1.2k
Modern Angular: Renovation for Your Applications
manfredsteyer
PRO
0
140
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
The Straight Up "How To Draw Better" Workshop
denniskardys
229
130k
We Have a Design System, Now What?
morganepeng
46
7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
34
1.9k
Typedesign – Prime Four
hannesfritz
37
2.2k
YesSQL, Process and Tooling at Scale
rocio
166
14k
Scaling GitHub
holman
458
140k
5 minutes of I Can Smell Your CMS
philhawksworth
200
19k
Debugging Ruby Performance
tmm1
71
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
36
9.1k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Making Projects Easy
brettharned
111
5.7k
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.