ep.49 ReThink state managements - Recoil から見える未来

  • spring-raining
  • uhyo
  • Hanakla
2020/06/12 に公開2407 views

このエピソードについて

ゲスト紹介

Recoil の概要

実利用から作られた Fleur

  • Fleur は多機能な SPA である Delir や、VRoid Hub、pixiv Sketch の開発経験を元に設計
    • Operation という副作用層や組み込みの router が特長
    • 中規模以上の開発時に必要となる機能をあらかじめ提供
    • store 管理の実装として immer.js を採用
  • 大規模な開発でも堅牢な開発ができる一方、若干小回りが効きづらい点も感じている

Recoil 私ならこう使う

  • Recoil は React と親和性の高い API ではあるものの、提供する機能はとてもシンプルで原始的
    • Recoil をベースとしたメタライブラリも容易に作れる
    • 特に Redux における Actions などの副作用は、各人がルールを決めて使わなければならない
  • 3 人が現時点での Recoil を使ったアプリケーションやライブラリを作るとするなら、どのような使い方で活用してみたいか?
    • spring_raining: Selector の set property を何かに活用できないか? → set 専用の selector を作ってみる?
    • Hanakla: Recoil が求められる状況はシングルページで複雑なステート管理が必要な場面
      • Reduxほど大げさではなく導入が楽
    • uhyo: get/set がどこからでも処理できるからこそ、外部から見える副作用の手段をうまく隠すことが重要 → Hooks を活用して直接副作用を実行させない
  • アプリケーションが複雑になった場合キーの管理はどうするか?
  • SSR の環境では動かなかったという報告もあり、まだ完全には SSR に対応できていない点は課題
  • API call などの非同期処理の状態を Recoil で表現する方法について

採用について

使用素材・クレジット

© Presented by UIT