Developers Boost の Session 6 の登壇資料です。
Developers Boost 公式サイト https://event.shoeisha.jp/devboost/20201212
OpenAPI Generator によるAPI Client コードの完全⾃動⽣成〜退屈な時間を有意義な時間に変えるために〜2020.12.12 Developers Boost #6
View Slide
岡⼭ 達哉• Android App Developer• 株式会社ゆめみ(2019年11⽉⼊社)• 趣味は将棋• Flutter で個⼈開発中(2⽉にリリース予定)blendthink
これまでの経歴公務員地元&⼩()会社,-.
本題に⼊る前に
正直...
題材ミスりました笑
1. 困った・苦労したこと2. 考えた・⾏動したこと3. 今後の⽅針についてなので...
1. 困った・苦労したこと
1. 困った・苦労したことこんな経験ありませんか︖
1. 困った・苦労したことどこが変更になったんだ..いつのまにか仕様変わってるどこを変更したのか分からない⁉
1. 困った・苦労したことこんなとき、ついつい責めてしまってませんか︖
1. 困った・苦労したこと仕様変更した時はちゃんと⾔って︕どこを変更したか教えて︕変更箇所は把握しといて︕
1. 困った・苦労したこと⾔ってることは正しい..
1. 困った・苦労したことしかし
1. 困った・苦労したこと⼈間は完璧ではありません
2. 考えた・⾏動したこと
2. 考えた・⾏動したこと運⽤でカバーはしたくないなぁそもそも修正するのめんどくさいなぁ
2. 考えた・⾏動したことそうだ
2. 考えた・⾏動したこと責任はすべてプログラムに押し付けよう⾃動化しよう︕
2. 考えた・⾏動したことAPIの変更の流れサーバー側の修正修正箇所の連絡クライアント側の修正
2. 考えた・⾏動したことAPIの変更の流れサ"バ"側の修正修正箇所の連絡クライアント側の修正⾃動化したい
2. 考えた・⾏動したこと⾃動化するには..︖
2. 考えた・⾏動したことAPIの変更の流れサ"バ"側の修正修正箇所の連絡クライアント側の修正
2. 考えた・⾏動したことGitHub Actions
2. 考えた・⾏動したことOpenAPI Generator
2. 考えた・⾏動したことこんな感じAPI API Client• API の更新通知の受信• API Client コードの⽣成• API Client にプルリク作成
2. 考えた・⾏動したこと試してみた
2. 考えた・⾏動したことAPI のリポジトリhttps://github.com/blendthink/linkmark-api
2. 考えた・⾏動したことAPI Client のリポジトリhttps://github.com/blendthink/linkmark-android
2. 考えた・⾏動したことめっちゃ便利︕
3. 今後の⽅針について
3. 今後の⽅針について実は、、
3. 今後の⽅針について課題が⼭積み
3. 今後の⽅針についてそもそも、、API仕様書がない
3. 今後の⽅針についてAPI仕様書がGit管理されてない
3. 今後の⽅針についてGitHub Actionsをいじれない権限が必要じゃ
3. 今後の⽅針についてOpenAPI Generatorで未対応の部分がある
3. 今後の⽅針についてRetrofitXCoroutineXKotlinx Serialization例えばAPI Client コードが、まだこの組み合わせで⾃動⽣成できない
3. 今後の⽅針について今後の⽅針
3. 今後の⽅針についてできるだけ⾃動化する
最後に
前提を疑うことは⼤切それって⼈がやることなの︖
社内の OJT チャンネルガイドライン
いかがでしたでしょうか︖
皆さんの退屈な時間を少しでも有意義な時間にできていれば幸いです
ご清聴ありがとうございました
参考• 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