自分に今足りてないのは設計力だと感じているので、最近話題のドメイン駆動設計について気になったので読んでみた。
「良いコード/悪いコードで学ぶ設計入門」という本を前に読んだけど、あれがドメイン駆動設計ということだったのかと。
値オブジェクトは、確かに言っていることはわかるのだけど、どこまでクラス分けするかというのは判断に迷いそうな気がする。あまり細かく分けすぎると、逆に煩雑になりそうだし。
値オブジェクトの他に、エンティティというものがあるとのことだけど、こっちはよくあるクラス設計なように感じた。エンティティのプロパティは値オブジェクトにしたほうがいいとかだと思ったけど、そういうことじゃないのか?(多分、まだよく理解できてない)
「ユニークキー制約はルールを守る主体ではなく、セーフティネットとして活用されるべき機能」というのは、確かにそうだろうなと思った。その前に、重複チェックはしたうえで、稀にそのチェックを通ってしまう(同じタイミングで登録処理があったなど)場合にはじくようにしたほうがいいということなんだろうな。
「デメテルの法則」という言葉は初めて知った。ようは、インスタンスのプロパティのプロパティを直接呼び出すなということっぽい。自分もためにやってしまうので気を付けたいと思う。
ところで、「IsFullメソッドでは30から1引いて29という数値で比較をしています。」という問題点ということにたいして、30でチェックするような処理に修正していたけど、そもそもマジックナンバーになっていることが気になった。
マジックナンバーはアンチパターンといわれるけど、それとドメイン駆動設計は関係ないということなのかな。
- 感想投稿日 : 2024年6月30日
- 読了日 : 2024年6月29日
- 本棚登録日 : 2024年6月30日
みんなの感想をみる