Developers Boost Session 6
by
おかやまん
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
OpenAPI Generator による API Client コードの完全⾃動⽣成 〜退屈な時間を有意義な時間に変えるために〜 2020.12.12 Developers Boost #6
Slide 2
Slide 2 text
岡⼭ 達哉 • Android App Developer • 株式会社ゆめみ(2019年11⽉⼊社) • 趣味は将棋 • Flutter で個⼈開発中(2⽉にリリース予定) blendthink
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
これまでの経歴 公 務 員 地 元 & ⼩ ( ) 会 社 , - .
Slide 5
Slide 5 text
No content
Slide 6
Slide 6 text
本題に⼊る前に
Slide 7
Slide 7 text
正直...
Slide 8
Slide 8 text
題材ミスりました笑
Slide 9
Slide 9 text
1. 困った・苦労したこと 2. 考えた・⾏動したこと 3. 今後の⽅針について なので...
Slide 10
Slide 10 text
1. 困った・苦労したこと
Slide 11
Slide 11 text
1. 困った・苦労したこと こんな経験 ありませんか︖
Slide 12
Slide 12 text
1. 困った・苦労したこと どこが変更になったんだ.. いつのまにか仕様変わってる どこを変更したのか分からない⁉
Slide 13
Slide 13 text
1. 困った・苦労したこと こんなとき、ついつい 責めてしまってませんか︖
Slide 14
Slide 14 text
1. 困った・苦労したこと 仕様変更した時は ちゃんと⾔って︕ どこを変更したか 教えて︕ 変更箇所は 把握しといて︕
Slide 15
Slide 15 text
1. 困った・苦労したこと ⾔ってることは 正しい..
Slide 16
Slide 16 text
1. 困った・苦労したこと しかし
Slide 17
Slide 17 text
1. 困った・苦労したこと ⼈間は完璧ではありません
Slide 18
Slide 18 text
2. 考えた・⾏動したこと
Slide 19
Slide 19 text
2. 考えた・⾏動したこと 運⽤でカバーは したくないなぁ そもそも修正するの めんどくさいなぁ
Slide 20
Slide 20 text
2. 考えた・⾏動したこと そうだ
Slide 21
Slide 21 text
2. 考えた・⾏動したこと 責任はすべて プログラムに押し付けよう ⾃動化しよう︕
Slide 22
Slide 22 text
2. 考えた・⾏動したこと APIの変更の流れ サ ー バ ー 側 の 修 正 修 正 箇 所 の 連 絡 ク ラ イ ア ン ト 側 の 修 正
Slide 23
Slide 23 text
2. 考えた・⾏動したこと APIの変更の流れ サ " バ " 側 の 修 正 修 正 箇 所 の 連 絡 ク ラ イ ア ン ト 側 の 修 正 ⾃動化したい
Slide 24
Slide 24 text
2. 考えた・⾏動したこと ⾃動化するには..︖
Slide 25
Slide 25 text
2. 考えた・⾏動したこと APIの変更の流れ サ " バ " 側 の 修 正 修 正 箇 所 の 連 絡 ク ラ イ ア ン ト 側 の 修 正
Slide 26
Slide 26 text
2. 考えた・⾏動したこと GitHub Actions
Slide 27
Slide 27 text
2. 考えた・⾏動したこと
Slide 28
Slide 28 text
2. 考えた・⾏動したこと APIの変更の流れ サ " バ " 側 の 修 正 修 正 箇 所 の 連 絡 ク ラ イ ア ン ト 側 の 修 正
Slide 29
Slide 29 text
2. 考えた・⾏動したこと OpenAPI Generator
Slide 30
Slide 30 text
2. 考えた・⾏動したこと
Slide 31
Slide 31 text
2. 考えた・⾏動したこと こんな感じ API API Client • API の更新通知の受信 • API Client コードの⽣成 • API Client にプルリク作成
Slide 32
Slide 32 text
2. 考えた・⾏動したこと 試してみた
Slide 33
Slide 33 text
2. 考えた・⾏動したこと API のリポジトリ https://github.com/blendthink/linkmark-api
Slide 34
Slide 34 text
2. 考えた・⾏動したこと API Client のリポジトリ https://github.com/blendthink/linkmark-android
Slide 35
Slide 35 text
2. 考えた・⾏動したこと
Slide 36
Slide 36 text
2. 考えた・⾏動したこと めっちゃ便利︕
Slide 37
Slide 37 text
3. 今後の⽅針について
Slide 38
Slide 38 text
3. 今後の⽅針について 実は、、
Slide 39
Slide 39 text
3. 今後の⽅針について 課題が⼭積み
Slide 40
Slide 40 text
3. 今後の⽅針について そもそも、、 API仕様書がない
Slide 41
Slide 41 text
3. 今後の⽅針について API仕様書が Git管理されてない
Slide 42
Slide 42 text
3. 今後の⽅針について GitHub Actions をいじれない 権限が必要じゃ
Slide 43
Slide 43 text
3. 今後の⽅針について OpenAPI Generator で未対応の部分がある
Slide 44
Slide 44 text
3. 今後の⽅針について Retrofit X Coroutine X Kotlinx Serialization 例えば API Client コードが、まだこの組み合わせで⾃動⽣成できない
Slide 45
Slide 45 text
3. 今後の⽅針について
Slide 46
Slide 46 text
3. 今後の⽅針について 今後の⽅針
Slide 47
Slide 47 text
3. 今後の⽅針について できるだけ⾃動化する
Slide 48
Slide 48 text
最後に
Slide 49
Slide 49 text
前提を疑うこと は⼤切 それって⼈がやることなの︖
Slide 50
Slide 50 text
社内の OJT チャンネルガイドライン
Slide 51
Slide 51 text
いかがでしたでしょうか︖
Slide 52
Slide 52 text
皆さんの退屈な時間を 少しでも有意義な時間に できていれば幸いです
Slide 53
Slide 53 text
ご清聴ありがとうございました
Slide 54
Slide 54 text
参考 • https://openapi-generator.tech/ • https://github.co.jp/features/actions • https://www.irasutoya.com • https://qiita.com/warahiko/items/3676f1164f4619e8debc • https://qiita.com/n_komiya/items/8310fdb7e2002e89eb13