この記事は何?
※※※ この記事はクソアニメレビューではありません ※※※
表題通り。読書感想文はちゃんと書き残しておこうと思うので。
感想
初学者向けのオブジェクト指向入門&ドメイン駆動開発入門って感じだった。 個人的にはもうちょい抽象的な設計のいろんなパターンの話をするのかと思ってたけど、予想よりも上の話に寄っていた印象。 まあ、とはいえ責務の分離とか凝集度の話とかも割とまとまっててよかった。
特に個人の大きい学びとしては、「データ表現とビジネスロジックを同じ場所にまとめろ」というのがなるほど感が強かった。 データ表現とビジネスロジックはレイヤーとしては分けるイメージがあったので驚いたけど、知識の凝集という意味では正しいかも。 ただ、個人的にこれをやると fat なクラスが爆誕すると考えている。 それに対する答えとして、本書の中では「いや、でかくなったら適切な粒度でクラスを分割するんやぞ」って書いてあって、「難しいこと言うね」ってなった。 それができれば苦労しないんですよね…… このあたりドメインモデル貧血症の話とかにも繋がるので、難しいわね。
トランザクション指向の設計との違いみたいな部分にも意識が向くようになったかも。 ある機能を実現するときって、大抵流れがあってそれをそのままコードに落とし込むから一連の流れの中で知識を表現しがちなんだけど、それだとあんま良くないよねみたいな話かな。
細かい学びでいうと、DB に not null 制約かけた方が良いよとか。 nullable の場合はテーブル分割できる場合が多かったり、null のハンドリングが必要だったりして面倒ゆえ。