読者です 読者をやめる 読者になる 読者になる

第二回ドメイン駆動設計読書会@大阪に参加した

前回とは打って変わって早起き。
午前中は娘と公園に行ってブランコに乗ったり滑り台を滑ったり鳩を追いかけまわしたりなんか白いボコボコした得体の知れない実を拾ったりした。

そんな感じで前回みたいに寝坊で遅刻することなく余裕の出発。
rebuild.fmの適当な回を聞きながら移動。ここまで超イケてるエンジニアの振る舞い。
そんなことはどうでもいい。

今回は出席者が前回の倍で17名。人数が多かったので2グループに別れての読書会となった。
流れとしては前回同様、音読からのディスカッションという形で、レポート係の方が要点をメモする感じ。
2回目だったこともあってスムーズに進行したと思う。
ただ今回も脱線というか議論は白熱して本の進捗自体は1章手前まで。
なんと2回の集会で1章に入ることもない感じ。温まって参りました!

今回印象に残ったのは以下の2点。

DDDは別に新しいパラダイムというわけではない

昔から取り組んでいたものであったし、それに近いことをやっていた。
なんだけど、うまくそれを継承できなかったりする理由から土壌が整っていなかった。
最近はようやくその辺りの土壌が全世界的に整ってきたんじゃないかという話。
(なぜ土壌が整って来たのかという点は興味深いけどこれはまた聞いてみようかな)

個人的にもそういった感覚はあって、実装レベルでは別にオブジェクト指向というか手法が違うことは無いように思っていた(まぁまだまだこの先に感じるものはあるかもしれないけれど)。
ただ、僕個人として以下の点はそんなに重視していなかったように思う。

モデルを重視する

ドメイン駆動設計で重要な点の一つだと思う。実装より概念を深堀りする、というところ。
どうしても僕みたいなイケメンだと動いてなんぼみたいなところがあった。
美しいクラス設計や美しい実装。ただ何を持って美しいとしていたか定かではない。。

現実世界を 厳密に構成し、選びぬいて抽象化したもの

設計・実装というイテレーションの中で練り上げていくもの。そしてチーム内で共有するもの。これは最初から定義できるものではない。
イテレーションを重視する、というところにフォーカスを当てることで日々の開発も少しは変わっていくかもなと思った。
これって聞いたことある話なんだけど、実感として沸き起こってきたことに価値があったように思う。

また、モデル制作って結局コミュニケーションなんだ、という発言があってそれにすごく賛同できた。 経緯として、概念的なモデルが正しいかどうかテストするにはどうしたらいいの?みたいな話があって、それって無理だよね、という。
それがユビキタス言語なんだよ。みたいな見方もあるけれど、結局そのユビキタス言語が正しいのかみたいな話になっちゃうので。
ステークホルダというかドメインエキスパートというか、そういった人たちとのコミュニケーションは豊かなドメインを生み出すためには必要なんだなって思った。まぁそこには全然関係のないハードルが潜んでいたりすると思うけど、それは恐らく別の問題だしね。

というわけで

懇親会は鹿児島地鶏のおいしいお店で、議論の続きをするのにいい感じの個室。3時間くらい色々な話をしました。
懐の深い勉強会なのでとてもいい経験させて頂いてます。
今後もよろしくお願いします!