GDG DevFest 2020 に参加しました #DevFestJa

10/17〜18 の 2 日間オンライン開催された、GDG DevFest 2020 に参加しました。

tokyo.gdgjapan.org

オンライン開催になったおかげで気軽に参加できました。とてもありがたいです。大規模なイベントでしたが進行がスムーズでした。運営のみなさまに感謝します。

様々な技術の話があるイベントでしたが、個人的には特に Android アプリ開発と Flutter アプリ開発に関心があるので、そのあたりのセッションを中心に参加しました。

セッションの感想など

これからはじめるAndroid開発

アプリ開発を取り巻く環境はどんどん変化するので、現状の定番環境を改めて話してもらえるのはありがたい。こういうことは本では学びにくい。あと、Kotlin でしかできないことって結構あるんだなあと思った。

Dagger Hilt

定番 DI ライブラリの Dagger に対して Dagger Hilt ではいろいろ改善されている。ただしまだ alpha なので移行するタイミングには注意。

Material Design Components カスタマイズ最前線

AppCompat から Material Components に移行するための Bridge がある。これを使うと少しずつ移行を進めることが可能になる。ただ、注意点もいろいろある。新規アプリなら Bridge を使わずに Material Components を最初から使っておくほうが良い。

Android の永続化 2020

SharedPreferences の問題点とそれを解決する Jetpack DataStore の話、それと Jetpack Room について、開発者から紹介されて素晴らしい。どちらも Kotlin コルーチンが活用されている。

Flutter はプロダクション開発に耐えうるのか

Flutter や Kotlin Multiplatform は、最近は iOS エンジニアでも関心を持っている人が多い印象。Flutter アプリ開発で使うライブラリの紹介などが参考になった。FlutterGen 良さそう。

Inside Flutter

Flutter は UI の描画なども含めて自前でやっているのが特徴。iOS だと以前は OpenGL だったが、現在は Metal が使われているらしい。

Goでテキストエディタを作った話

Go で簡易なテキストエディタを実装。データ構造として Gap Buffer を採用。1000 行ほどのコードで、勉強として読むと良さそう。

モバイルアプリエンジニアも簡単にウェブアプリを作れるよ!そう、Flutterならね。

初めての Web アプリ開発を Flutter Web で始めるという発想が面白い。確かにモバイルアプリエンジニアなら、JavaScript を覚えて Web フレームワークを覚えて…よりも、Dart を覚えて Flutter を覚えて…のほうが早いか。

新しくなった画面間データ連携について

Activity や Fragment のデータ連携について、新しい API の使い方を丁寧に解説。基本から解説してくれるセッションはその場で理解しやすくありがたい。新しいものは以前の REQUEST CODE 方式よりもずっと良さそう。

新しいデータ永続化の方法!Jetpack DataStoreの紹介

Jetpack DataStore の使い方を丁寧に解説。Jetpack DataStore と Room の使い分けにも触れられていた。SharedPreferences からの移行手段もあるらしい。

Block Pong: Web 技術を駆使したゲームアプリの実装舞台裏

ハイパーカジュアルゲームの開発って全然知らなかったけど、話が面白かった。

Goでコード生成をはじめよう

コード生成が目的だけど、静的解析の話が中心だったように感じた。Go は静的解析がしやすいように設計されている。

Goではじめる!アルゴリズムとデータ構造入門

アルゴリズムとデータ構造を LeetCode の過去問で勉強する話。解説がわかりやすかった。