OOPのバックグラウンドから来て、関数型プログラミングにおける不変のオブジェクト/レコード/メッセージの概念にいくつかの問題があります。
各関数がこのレコードのデータを追加または更新することになっている関数のパイプラインを介してPurchaseOrderレコードを渡すとします。
可変状態を処理するときは、渡されるメッセージの特定のプロパティを設定するだけです。
不変のレコードを扱うとき、この問題で物事を簡単にするいくつかの設計上のトリックはありますか?1つのフィールドだけを変更するためにすべてのフィールドをコピーするのは、面倒です。
{ A = x.A ; B = x.B ; C = x.C ; D = x.D ; E = somethingnew; }
データをできるだけグループ化することは、データを処理するための良い方法だと思います。したがって、すべてのフィールドをコピーすることは避けてください。これに関する他の方法や設計ガイドラインはありますか?