かとじゅんの技術日誌

技術の話をするところ

「エリック・エヴァンスのドメイン駆動設計」 を献本していただきました

嬉しいことに「エリック・エヴァンスのドメイン駆動設計」 を献本していただきました!
訳者の和智さん、関係者の方々、翔泳社さん ありがとうございます。おめでとうございます!Tシャツまでもらった!!

実は、私とid:daisuke-mは、この翻訳版の実装編のレビューに参加させていただきました。
昨年、DevLOVEのイベント「Beautiful Develpment」でDDDの話を聞いた後に、翻訳版が発売される噂を聞きつけ、和田さん(id:t-wada)に「レビューに参加したい!」と無理を言って、訳者の一人である和智さん(id:digitalsoul)を紹介してもらいました。
和智さんは快く対応くれて、レビューさせてもらうことになりました。ありがとうございました。

ドメイン駆動設計との出会いは、id:daisuke-mに勧められたのがきっかけです。洋書だし、分厚くて枕になりそうだし、英語も文体が固く、エンティティの章を読むと裁判がどうのって、読むのはハードルが高かった。。

しばらく読み進めて、id:ashigeru の思惑通りDDDが気に入った俺は、今度は上司 id:j5ik2o にこの本を買って読ませる、という暴挙に出る。この本の内容を理解して、俺と共感してくれる変態はこの人しかいないだろう、と。まぁ、思惑通り上司はこの本に魅了され、翻訳レビュー謝辞にまで名を連ねるに至った。

でも、この本の中には設計と実装の面で深い示唆を与えてくれるという。「う〜ん、う〜ん」と言いながら英語を訳しながら読みました。簡単にいうと現実世界の問題をオブジェクト指向を使って設計・実装するにはどうしたらよいか、そういう示唆を与えてくれる本です。ドメインと聞くと業務系のノウハウかと勘違いしそうですが、オブジェクト指向設計やプログラミングに関する濃い話題の本だと思ってもらえばよいかと思います。
オブジェクト指向懐疑論を唱える人もいるくらい、オブジェクト指向は、本当の意味で理解が難しいし、それをシステム化する業務の対象で扱う場合は、どのように現実世界と抽象的なオブジェクトを関連付けるべきか、特に難しいです。それらに立ち向かうために、世の中には様々な設計手法が存在しますが、DDDはそれらの設計手法を踏まえた上で、ドメインをオブジェクト指向で解決するための新しい道しるべを示してくれると思っています。難しいからって諦めていては良いものは作れませんから、こういう本を読むわけです。まぁ、今年一番のお勧めの書籍であることは言うまでもありません。

近々に、以下のイベントも控えていて、今年は日本のDDDの夜明けを見ることになりそうです。
4月9日 Beautiful Development ソフトウェアの核心にある複雑さに立ち向かう(東京都)
セッション スピーカー : Eric Evans|QCon Tokyo 2011 Conference|QCon 東京 2011 カンファレンス

ということで、オブジェクト指向に慣れてきて、これからどういう設計や実装がよいか、暗中模索している悩めるプログラマにはぜひ読んでもらいたい一冊です。

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)