はじめに
こんにちわとこんばんは、Androidエンジニアの@nyafunta9858です。 2022年12月10日に約3年ぶりの開催となったKotlin Fest 2022で登壇させていただきましたので、そのレポートです。Kotlin Festは「Kotlinを愛でる」をテーマにしたテックカンファレンスで、私的にはDroidKaigiと並んで一度は登壇してみたいイベントのひとつでした。此度の登壇機会は非常にありがたく、振り返ってみても非常にいい体験だったと感じています。
つらつらとその体験を振り返ってみますので、お時間の許すかたは気楽に読み物として読んでいってやってください。
もう迷わないCoroutines 〜suspend funとChannelとFlow〜
応募〜採択
今回、「もう迷わないCoroutines 〜suspend funとChannelとFlow〜」というテーマでお話をさせていただきました。 (CoroutinesとはKotlinでnon-blockingに非同期処理を実現する機能です。)
社内のネタ出し会を切っ掛けに応募したのですが、このテーマのモチベーションは「自分が知りたい・聴きたいこと」です。もともとKotlinの中でも関心の深い機能・技術だったので、「より深く理解し使いこなしたい、そしてこれを切っ掛けに色んな開発者と話をしてみたい」。そういった想いからこのテーマで応募したところ、ありがたくも内定をいただけました。
よよよよよよよろしくお願いします!#kotlinfest pic.twitter.com/m3bJueELAT
— にゃふんた (@nyafunta9858) October 31, 2022
内容について
これからCoroutinesを触るひと、なんとなくでCoroutinesを使っていたひとをメインの視聴者として想定して内容を構成しました。
タイトルにもあるsuspend関数、Flow、Channelの特徴を整理し、コールバックパターンなど実際に遭遇しやすいケース4 + 1を題材にどう使い分けるのがいいか?をお話させていただきました。 本当はもっと色んなケースをお話したかったのですが、時間枠に収めるためにドロップしたものもちらほらあります。(e.g. Single EventなLiveDataとCoroutineとの置き換えなど)機会があればこれらもアウトプットしたいと思っています。
あと今回は各機能の特徴を一覧に整理してお見せしてみたのですが、登壇をしている最中に「あーこれのフローチャートみたいなの欲しいなー」と思ったりもしたので、こちらも整理できたらどこかで世に放ちたいと思います。
裏話も少し。
最新環境でお話しますとプロポーザルに書いていたのですが、 開催前にKotlin 1.8.0-RCがリリースされており、「もしかしてCoroutinesもアップデート来るのでは?」という状況に内心では少しソワソワしてました。最新環境で無事お話することができてホッとしています。登壇あるあるですね。
無事登壇終わったんで白状するんですが、先日Kotlin 1.8.0-RCが出てきたもんで、「おっ、Coroutinesもアップデート来ちゃうんだっけ?」とソワソワしたんですよ(最新環境でって書いてたもんで😂
— にゃふんた (@nyafunta9858) December 10, 2022
また、今回登壇が決まってから改めてCoroutinesに関して勉強し直したのですが、最新情報を改めて調べてみると取りこぼしていた情報が続々でてきたり、Coroutinesが正式リリースされた年に書いたreactiveモジュールの記事が4年前で当時と比較するとその違いが興味深かったりと、調べ物をしている時間がすでに楽しかったです。今後も定期的に技術の変遷を拾っていくのも面白いかもしれません。
発表を終えて
冒頭にも書きましたが、非常にいい経験となりました。 はじめてのライブ配信での登壇となりましたが、大分リラックスしてお話できたかなと思います。
質問も想定していたよりもとても多くいただきまして、質問時間枠いっぱい使ってお話することができました。先述した、この登壇を切っ掛けに色んな開発者と話をしてみたいというモチベーションがある程度叶った形で終えることができ、本当にありがたい体験となりました。(オフラインでもコミュニケーションできる日が待ち遠しいです)
実は、時間の都合でご回答できていないものもあるのですが、そちらは近日中に何かしらの形で発信したいと思いますので少々お待ちいただけますと幸いです。
おわりに
3年振りとなるKotlin Fest2022でしたが、この登壇は非常にいい経験となりました(3回目)。 見ていただいた皆さま、運営スタッフの皆さま、そして登壇に向けてご協力いただいた社内の皆さま、改めて本当にありがとうございました。
また登壇することができるように日々研鑽を積みたいと思いますし、Kotlinへの愛を育んでいきたいと思います。
マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。
【会社情報】 ■Wantedly ■株式会社マネーフォワード ■福岡開発拠点 ■関西開発拠点(大阪/京都)
【SNS】 ■マネーフォワード公式note ■Twitter - 【公式】マネーフォワード ■Twitter - Money Forward Developers ■connpass - マネーフォワード ■YouTube - Money Forward Developers