2016-04-06 実践ドメイン駆動設計をよんでいる
実践ドメイン駆動設計 (IDDD : Implementing Domain-Driven Design) を読んでいる。
昨日 ([2016-04-05][]) に続き、読んでいる。 9 章まで読んだ。
- DDD への誘い
- ドメイン、サブドメイン、境界づけられたコンテキスト
- コンテキストマップ
- アーキテクチャ
- エンティティ
- 値オブジェクト
- サービス
- ドメインイベント
- モジュール
ここまでの章は上記のとおり。ずいぶんと進んだ。
OO な DDD ではなく、 Functional な DDD にできないかを考えながら読んでいる。Entity は不変オブジェクトでないし、Event の Publish が副作用を前提としているような……。核となる概念を役立つ形で取り入れられれば、それで良いけど、なかなか難しそうではある。
b-o-a は Event に支配されているし、本気でやればほとんど関数型っぽく書ける。 Redux は Reducer こそ関数型っぽいけど、redux-thunk を使うと Middleware の処理する関数が副作用前提になるんだよね……。