ドメイン駆動設計
Domain-Driven Design
どめいんくどうせっけい
業務ドメインの知識を中心にソフトウェアを設計する手法。ドメインモデル、ドメインロジック、コンテキストマップ、ユビキタス言語、エンティティ、値オブジェクト、サービスなどの概念を用いて、業務の本質をコードに反映する。
Related
他の資格での定義
ビジネスドメイン(業務領域)の知識を中心に据えてソフトウェアを設計する手法。ドメインモデル、ドメインロジック、ユビキタス言語などの概念を用い、業務の複雑さをソフトウェアに正確に反映する。DDDと略される。
ビジネスドメインの知識を中心に据えてソフトウェアを設計する手法。ユビキタス言語、境界づけられたコンテキスト、集約、エンティティ、値オブジェクトなどの概念を用いる。Eric Evansが提唱した。
ビジネスドメインの知識を中心に据えてソフトウェアを設計する手法。ユビキタス言語、境界づけられたコンテキスト、集約、エンティティ、値オブジェクトなどの概念を用いる。Eric Evansが提唱した。
業務の対象領域(ドメイン)の知識をモデルとして表し、そのモデルを中心にソフトウェアを設計する手法で、エリック・エヴァンスが提唱した。業務の専門家と開発者がユビキタス言語でモデルを作り、境界づけられたコンテキストで範囲を区切り、エンティティや値オブジェクトなどの要素で実装する。
Related
関連キーワードの用語
問題を小さな部分問題に分割し、各部分問題を再帰的に解いた後、結果を統合して全体の解を得る設計手法。マージソート、クイックソート、二分探索、FFTなどの基盤となるアルゴリズム設計パラダイム。
機能分割と構造化の手順に基づくソフトウェア設計手法。機能の洗い出し、データフローの明確化、機能のグループ化、階層構造化を経て、プログラム機能の決定と機能仕様の文書化を行う。流れ図やDFDなどを用いる。
クラス、インスタンス、属性、メソッドなどの概念を用いてソフトウェアを設計する手法。カプセル化、継承(インヘリタンス)、多相性(ポリモーフィズム)が基本原則。SOLID原則に基づいた設計が推奨される。
オブジェクト指向設計で頻出する問題に対する再利用可能な解決策のカタログ。GoF(Gang of Four)により、生成、構造、振る舞いの3種類23パターンが体系化されている。Singleton、Factory Method、Observer等が代表的。
ソフトウェアをModel(データと業務ロジック)、View(表示)、Controller(入力制御)の3つの役割に分離するアーキテクチャパターン。UIと業務ロジックを分離することで保守性と再利用性を高める。Webアプリケーションで広く採用されている。
データ中心アプローチ。業務で扱うデータの構造を中心にシステムを設計する手法。E-R図を用いてデータモデルを作成し、正規化によりデータの冗長性を排除する。一事実一箇所の原則に基づき、データの整合性を重視する。
