2019/02/28(木)に行われた「potatotips #59 (iOS/Android開発Tips共有会)」のまとめです。
ハッシュタグは#potatotipsです🐦
「potatotips」とは?
iOSまたはAndroidのTipsをLTで発表する勉強会です。以前は参加者全員がLTをしていたようですが、現在はオーディエンス枠もあります。
私はオーディエンス枠で参加させていただきました。
イベントページはこちら↓
GitHubの管理ページはこちら↓
開場
- 時間:18:30-
今回の主催はグリーさんです。写真は撮っていないのですが、素晴らしい環境でした。電子ホワイトボード?が面白かったです。
勉強会の参加が2度目であまり慣れていなく、気を遣い過ぎてスタッフみたいになっていました。ピザを「どうぞ」としたり、お皿やお酒の位置を教えたり、自テーブル全員分のお手拭きを持ってきたりと…笑
LT
- 時間:19:00-
LTはiOSとAndroidのTipsを交互に発表していく形式でした。
Page Object Pattern with XCUITest
- iOS
- 発表者:Kento Nagataさん(@ngtknt)
「Page Object Pattern」というUIテストの設計技法をXCUITestに適用するという発表でした。
スライドの構成と発表の仕方が上手であり、引き込まれるように5分間聞き入っていました。
私はXCUITestを使ってUIテストを書いているのですが、UIテストに設計技法があることを知らなかったので、強く感銘を受けました。この発表を聞いた翌日に会社の先輩へ共有し、今では実際に業務に取り入れています。
Page Object Pattern自体は言語を問わずに適用できるので、iOSのみでなくAndroidアプリ開発の方にもおすすめです。
Firebase A/B Testingを使ってサーバ側までA/Bテストした話
- Android
- 発表者:mahiguchさん(@mahiguch1)
Firebase A/B Testingを使ってサーバー側もA/Bテストされたという発表でした。
グリーさんはFirebaseをうまく活用しており、FirebaseでA/Bテストを行う際には読み返したいスライドです。
ModelをLayerで分けてUnit Testの観点を明確にする
- iOS
- 発表者:kamui_projectさん(@kamui_project)
理解が追いついていないので、スライドを見て復習したいと思います。
簡単にARアプリを作ってみよう
- Android
- 発表者:ichi-katoさん
スライドが見つからなかったので割愛させていただきます。
SwiftでVRMファイルを表示してみた話
- iOS
- 発表者:Tatsuya Tanakaさん(@tanakasan2525)
SwiftでVRMファイルを表示されたお話でした。
VRMとはVR向けの人型3Dアバターフォーマットのことであり、公式ではUnityによる実装しか提供されていないそうです。それをSwiftで実装されたということで、めちゃくちゃすごいと思いました。
VTuberは観たことすらなかったので、まずは観てみようと思います。ヤフーさんもVTuberをされているのが驚きでした。
ViewPager2をちょっと触ってみよう
- Android
- 発表者:Ryo Sakaguchiさん(@wakwak3125)
ViewPager2についての発表でした。
ViewPager2はまだアルファ版ということでしたが、アルファ版からいろいろ触ってみて発表できるまで落とし込むのはすごいと思いました。
しかもサンプルコードまで公開されています↓
この意欲と行動力は見習わせていただきたいです。
RxSwiftに対応したバリデーションをGenericなProtocolで実装してみた
- iOS
- 発表者:yazakiさん
RxSwift対応のバリデーションを実装したお話でした。
複雑なコードを簡潔にする系のお話は大好きなので、聞いていて面白かったです。
RxSwiftは使ったことがないのですが、使う際には参考にしたいスライドでした。
AndroidX Navigationを導入した話
- Android
- 発表者:くぼぼさん(@swiz_ard)
AndroidX Navigationを導入したお話でした。
実際にWantedly Visitに適用した際の画面遷移図を載せられているので、説得力があり、視覚的にもわかりやすかったです。
実装に苦戦した点とその解決策を紹介しているのも、これから導入する方にとってはありがたいです。
Androidはあまりわからないのですが、iOSでいうStoryboardのようなものだと思いました。
逆引きRxSwift: 編集画面のViewModel設計と実装
有料Noteの内容を発表されていましたので、割愛させていただきます。
AndroidアプリのUI/UX改善例その2
- Android
- 発表者:Kenichi Kambaraさん(@korodroid)
AndroidアプリのUI/UX改善についての発表でした。
OS問わずに役立つ内容だったのが嬉しかったです。
教えて!Xcode
- iOS
- 発表者:Nishiyama Nobuyukiさん(@5mingame2)
Xcodeのある設定についての発表でした。
発表の構成と笑いの取り方が絶妙でしたw 面白くてTipsもしっかりと伝えられるのは憧れます。
パズル&モナークをプレイしてみたいと思いました。
Androidの状態管理をするライブラリOwlの紹介
- Android
- 発表者:Tsukamoto Takeshiさん(@itometeam)
発表者が実装されたAndroidの状態管理ライブラリの紹介でした。
ライブラリを実装して公開するまで落とし込める人はすごいと思います。いつか自分もやってみたいです。
ライブラリはこちら↓
Owlの紹介記事はこちら↓
https://link.medium.com/Qe3o84nzFU
画面遷移が絡む値の受け渡しをRxSwiftで直列化してみた
- iOS
- 発表者:417_72kiさん(@417_72ki)
RxSwiftの複雑な処理フローを直列で書けるTipsでした。
発表が面白かったですw RxSwiftがわからなくても面白いと何となくわかったような気になります。
サンプルも実装されています↓
あらためてLiveData
- Android
- 発表者:ktnさん(@kotokoto_fire)
LiveDataについての発表でした。
私はLiveDataという単語すら知らなかったのですが、この発表で覚えましたw
みなさんも覚えたようですw
やろう! OWASP MASVS
- iOS
- 発表者:ますずみさん
グリーさんによる追加LTです。
「OWASP MASVS」というモバイルアプリのセキュリティに関するお話でした。
スライドが見つかりませんでした。初めて聞く内容であり、非常に参考になったので残念です。
OWASP MASVSの日本語訳がGitHubに上がっていましたので載せます↓
Immutable data holder
- Android
- 発表者:なかのさん(@haru067)
グリーさんによる追加LTです。
「ミュータブルで値を持つのはやめよう!」という発表でした。
内容としてはiOSにも適用できることなので、できる限り var
でなく let
を使うようにします。
おわりに
potatotipsには初めて参加させていただきましたが、本の著者さんや普段から登壇されている方が多く、レベルの高い勉強会だと感じました。
「こんなすごい場で自分なんかが発表するのは無理だ…」と思っていましたが、何と次の#60で登壇させていただきましたw その話は後ほど書きます。