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