和智右桂のレビュー一覧
-
Posted by ブクログ
本書は「ドメイン駆動設計」という、ソフトウェア・システムのモデリングおよび設計手法について説明したものである。
ドメイン駆動設計は「ドメイン知識駆動設計」とよぶ方がわかりやすいと思う。
これは、業務のモデリングおよびシステムの設計に、クライアントであるドメインエキスパートと共通の語彙を使ってモデリングから設計の詳細までを行おうという手法である。
これによりモデルと実装が乖離することがなく、ドメインエキスパートおよびソフトウェア・エンジニアがつねに対話しながら、彼らの知見を活かしてモデルとシステムを改良し続けられるとしている。これが本書のメインテーマである。
そして、モデルをシンプルにするために、値オブジェクトやimmutableなオブジェクトを使うことを推奨し、コンポーネントの疎結合化、レイヤー化の導入を提案する。これが本書のサブテーマである。
ただし、既存のシステムが存在する場合などでは、全て理想的に行くとは限らないので、その場合の解決・妥協方法について本書の後半で述べられている。
実際にシステムを構築した人でないと後半は漠然としていてわかりにくいが、前半は例を用いて明確に書かれており、それだけでも本書を読む価値はあると思ったので★4つとする。 -
Posted by ブクログ
---2011/7/15---
とりあえず1回読みました。
ズバリ今の私には非常に有益な本でした。
オブジェクト指向の開発経験が乏しい私にはピンと来ず、すんなり理解できない箇所もあったので、この先繰り返し読もうと思います。
筆者が関わったプロジェクトの様々な失敗の様子も記載されているのもよいです。
それらが自分の会社の状況と非常に似通っており、ちょっと気が重くなったりもします。
ドメイン駆動開発、モデル駆動開発、オブジェクト指向での開発をしていない方にも役立つ内容がたくさんあると思います。
記載されている内容を自分のプロジェクトと組織に合わせ、実践できるようになりたいです。 -
Posted by ブクログ
原書が2003年なので、2021年現在からみると、古典中の古典ですね。当時流行っていたXPとかオブジェクト指向開発などの文脈を理解しつつ、難解な文章を汲み取る根気が必要とされる本だと思います。自分は一応最後まで目を通したものの、早々にちゃんと理解することを諦めました。
要は、業務に詳しいけど技術はそれほどでもない人と、技術は詳しいけど業務はそれほどでもない人がいる。つまり、両方に詳しい人なんてのはいないので、用語を統一して(ユビキタス言語)、システムに必要な要素を抽出して(蒸留して)、ドキュメンテーションして(モデル化して)、ステークホルダー間で会話していこうぜっていう話なんだと思います。そんなこと分かってるわって怒られそうですね。その課題に立ち向かうための話が種々書かれているので、もしかしたら現代でも参考になる点もあったかも知れません。
Web系企業っていうのは、自社のビジネス=業務を自分たちで開発するので問題が起きにくいのかなと。あるいは、自社開発っていうのもその流れですよね。
自分の場合は、金融系ITスペシャリストみたいな感じなので、対象ドメインの知識と、IT知識とそれぞれの流行をキャッチアップしていかないといけません。まあーそんなの分かってるけど、両方分かる人は希少価値があることだし、改めて意識していこうかなと思いました。