【やさしく解説 設計編 #4・本編最終回】「駆動」ってなんだろう 〜何があなたの手を動かすのか〜
この連載で、3つの質問を手に入れてきました。「この話は、仕事の話から始まってる? 道具の話から?」(#1)、「その理由の持ち主は、システムより長生きしそう?」(#2)、「このルール、新人さんが張り紙を読まなくても守れる?」(#3)。
最終回の今回、新しい概念は出てきません。かわりに、種明かしをします。実はこの3つ、ぜんぶ同じひとつの質問の練習でした——「いま、何がこの判断を動かしているのか?」
「ドメイン駆動」の「駆動」は、英語ではdrive。車の運転と同じ言葉です。自動運転の車に運転手がいないように見えて、実はAIという運転手が座っているように、「何にも運転されていない設計」は存在しません。空いているように見える運転席には、必ず誰かが座っています。お客さんの業務、フレームワーク、締切、部長、AI、そして「なんとなくの雰囲気」——現場でよく見かける運転手たちを図鑑にして紹介します。
この図鑑に悪者はいません。締切に運転させるべき日も、本当にあります。危ないのは、誰が運転しているか気づかないまま走ることだけです。
読み終えたら、4つの質問がぜんぶ入った道具箱が完成します。どれも心の中でつぶやくだけ。準備も、許可も、専門用語も要りません。まずは次の会議で、メモの隅に「そのとき運転席に座っていた人の名前」を書いてみてください。
記事一覧
【 設計編 #1 】 「ドメイン駆動」と「実装駆動」ってなに?
`軽量DDD` `設計判断の出発点` `DDDの肯定形の対義語`
【 設計編 #2 】 持ち主の寿命のはなし
`所有性` `依存先の寿命` `公共構造(SQL・HTTP)とベンダー製品`
【 設計編 #3 】 規約による保護と、構造による保護
`ポカヨケ` `型と制約で守る` `人依存の規約は最下位層`
【 設計編 #4・本編最終回 】 何があなたの手を動かすのか
`変更理由の出所` `単一責任原則の「責任」` `要求の駆動源`