【ゆびきたすげんご】
ユビキタス言語 とは?
💡 エンジニアと業務の専門家が同じ言葉で話せる魔法の辞書
📌 このページのポイント
- 開発チームとビジネス側が同じ用語・同じ意味で会話するための共通言語
- コード内のクラス名や変数名にもユビキタス言語を反映させる
- 言葉の定義が曖昧だと仕様のズレやバグの原因になるため厳密に管理する
- エリック・エヴァンスの著書「ドメイン駆動設計」で提唱された概念
ユビキタス言語って、プログラミング言語のこと?
プログラミング言語とは違うよ。開発者と業務の専門家が会話するときに使う「共通の用語集」のことなんだ。たとえば保険システムなら「契約者」「被保険者」「保険金受取人」の定義をチーム全員で揃えるイメージだね
言葉を揃えるだけでそんなに大事なの?
コードにも関係あるの?
むしろコードにこそ反映させるのがポイントなんだ。ユビキタス言語で「注文」と決めたら、コード上のクラス名もOrderにする。「購買」とか「買い物」とか別の言葉を使わないようにするんだよ
途中で言葉の定義が変わったらどうするの?
DDDを使わなくてもユビキタス言語は役立つ?
もちろんだよ。DDDを本格導入しなくても、チームで用語集を作って共有するだけで効果があるんだ。大規模プロジェクトほど言葉のズレが致命的になるから、最初に用語を揃える習慣をつけるといいね
まとめ:ざっくりこれだけ覚えればOK!
「ユビキタス言語」って出てきたら「開発者と業務の人が共通で使う言葉の取り決め」と思えればだいたいOK!
📖 おまけ:英語の意味
「Ubiquitous Language」 = 普遍的な言語
💬 ubiquitousは「どこにでもある」という意味。チームのどこにいても同じ言葉が通じるようにしようという考え方だよ