Firebase のミッションである"Help mobile and web app developers succeed"は変わらず AutoML Vision などの AI 関連の機能が強化されました。コンソールでポチポチするだけで機械学習モデルの学習まで出来る様子は印象的でした。他にも、Cron への対応、Firebase Test Lab, Performance Monitoring, Velocity Alert Setting, Google Analytics for Firebase など、便利そうな機能がたくさん紹介されていました。 -https://www.youtube.com/watch?v=x8qTEMkZCPs
Web関連
Web関連のセッションは、"What's New in JavaScript", "Google Search and JavaScript Sites", "Speed at Scale: Web Performance Tips and Tricks from the Trenches" に参加しました。SPAアプリを作っている人は、"Google Search and JavaScript Sites"を見ると勉強になりそうです。SpeedのセッションはWebサイトを高速化させる工夫が数多くあり、とても参考になります。後でもう一度みたいと思います。次の Chrome ではネイティブの img タグに loading="lazy" 属性を追加することができるようになり、Lazy Loading の JS 実装が必要なくなるとのことです。loading 属性は iframe にも追加されます。途中で日経新聞電子版の CSS の最適化の事例が4ページに渡って紹介されていました。Lighthouse の新機能の LightWallet は、パフォーマンス測定にPerformance Budget という概念を持ち込み、Webサイトの満たすべき水準についての閾値を定めることを可能にします。有用そうです。
Flutterについて
Flutter for Web が Technical Previewとして、またSDKの安定バージョンの1.5が公開されました。キーノートでは Flutter 関連の発表はないのかなー、と思っていたら最後の最後で登場したのでFlutter好きには嬉しいサプライズでした。 Sandbox では Flutter for Web を開発しているコアエンジニアにデモを見せてもらったり、質問することができました。For Web のクオリティは相当高いという印象です。 - 将来的には、/android, /ios ディレクトリと並列で /web ディレクトリを新設する(Web向けにプラグインを開発することができる) - Webでは難しいアニメーションも Flutter のアニメーションで簡単に実現可能 また Flutter Pragramtic State Management のセッションでは実用的な Flutter の状態管理の方法を学べました。このセッションでは、Consumer, Notifier, Provider を使った状態管理方法が紹介されていて、 今まで推奨されていた BLoC パターンは登場しませんでした。今後はこれが主流になるのかと思います。詳しくはセッションをご覧ください。このセッションは最終日でしたが満席で、Flutterの注目度の高さを窺わせました。