タグ

2022年12月7日のブックマーク (3件)

  • Recoilで始めるお手軽フロントエンドDDD

    はじめに React でコードを書いているとき、ある程度の規模のプロジェクトになると class を使いたくなりませんか? 僕はバックエンドで DDD を用いている場合は、同じように Entity を宣言して使いたい場面が多々ありました。 しかし、Reactプロジェクトで getter/setter を用いて値を変更しても残念ながら再描画はされません。 Redux の処理内や hooks 内で中途半端に class を用いても結局 DDD の設計思想をうまくコードに落とし込むのは難しいです...(どなたがご享受ください!) 今回は僕が Recoil を使ってフロントエンド DDD を手軽に実装する方法を共有したいと思います。 また、まだあまり技術記事で紹介されていないTypescriptでのサンプルコードやatomFamily, selectorFamilyの紹介も多く含んでいるので参

    Recoilで始めるお手軽フロントエンドDDD
  • Recoilで快適フロントエンド開発 | 株式会社ヌーラボ(Nulab inc.)

    最近社内向けのツールを新規で開発していて、React + Next.js と合わせてRecoilとRelayを使うことにしたら大変素晴らしかったので、(すでに世の中に紹介記事がたくさんありますが)ご紹介します。 Recoilだけで結構な量になってしまったので、Relayについてはまた後日別の記事を書きます。 (追記:書きましたがRelay使わなくなったという記事になっちゃいました:GraphQLライブラリをApollo→Relay→Urqlにハシゴした話) Reactの提供元であるFacebook改めMetaが開発中の新しい状態管理ライブラリです。 アプリケーション内に複数のデータストアを持てる 非同期対応 React hooks前提 が特徴です。個人的に、Redux + middleware周りの全てをまるっと置き換えてくれると期待しています。 ※ 2021年11月現在、recoilはま

    Recoilで快適フロントエンド開発 | 株式会社ヌーラボ(Nulab inc.)
    kitokitoki
    kitokitoki 2022/12/07
    ほぼ同時にatomを更新する場合
  • GraphQLライブラリをApollo→Relay→Urqlにハシゴした話 | 株式会社ヌーラボ(Nulab inc.)

    GraphQLクライアントライブラリ乗り換え遍歴 私達のプロジェクトではReactフロントエンドとバックエンドの通信にGraphQLを使っています。 GraphQLは、たいていの場合はHTTP POSTリクエストで リクエストボディ:GraphQLクエリ(文字列)と引数(オブジェクト)からなるJSON レスポンスボディ:データJSON をやりとりするだけというだけのシンプルなプロトコルなので、全てfetch関数で頑張るストロングスタイルで行けないこともないですが、やっぱり専用のクライアントライブラリを利用したほうが楽です。 そのライブラリとして一番有名なApollo Clientから始まってRelay、Urqlと、3ヶ月くらいの間に2回も乗り換えてしまったので、反省の意味も込めて記事にしたいと思います。 GraphQLクライアントライブラリがいろいろあってどう違うんだろうと迷った方の助け

    GraphQLライブラリをApollo→Relay→Urqlにハシゴした話 | 株式会社ヌーラボ(Nulab inc.)