ドメイン駆動設計入門―ボトムアップでわかる!ドメイン駆動設計の基本 [単行本]
    • ドメイン駆動設計入門―ボトムアップでわかる!ドメイン駆動設計の基本 [単行本]

    • ¥3,960119 ゴールドポイント(3%還元)
    • 在庫あり2026年7月22日水曜日までヨドバシエクストリームサービス便(無料)がお届け

ドメイン駆動設計入門―ボトムアップでわかる!ドメイン駆動設計の基本 [単行本]

  • 5.0
価格:¥3,960(税込)
ゴールドポイント:119 ゴールドポイント(3%還元)(¥119相当)
フォーマット:
お届け日:在庫あり今すぐのご注文で、2026年7月22日水曜日までヨドバシエクストリームサービス便(無料)がお届けします。届け先変更]詳しくはこちら
出版社:翔泳社
販売開始日: 2020/02/13
お取り扱い: のお取り扱い商品です。
ご確認事項:返品不可
店舗受け取りが可能です
マルチメディアAkibaマルチメディア梅田マルチメディア博多では24時間営業時間外でもお受け取りいただけます マルチメディア池袋では朝6:00〜23:30の間、営業時間外でもお受け取りいただけます

ドメイン駆動設計入門―ボトムアップでわかる!ドメイン駆動設計の基本 の 商品概要

  • 要旨(「BOOK」データベースより)

    初心者にとって、理解しやすい、そして実践しやすいパターンからスタート。具体的なサンプルを交えながら、ドメイン駆動設計に頻出するパターンの目的と記述方法を1つ1つボトムアップで解説します。
  • 目次

    Chapter 1 ドメイン駆動設計とは

     1.1 ドメイン駆動設計とは何か

     1.2 ドメインの知識に焦点をあてた設計手法

     1.3 本書解説事項と目指すゴール

     COLUMN|ドメイン駆動設計の実践を難しくするもの

     1.4 本書で解説するパターンについて

     COLUMN|なぜいま、ドメイン駆動設計か



    Chapter 2 システム固有の値を表現する「値オブジェクト」

     2.1 値オブジェクトとは

     2.2 値の性質と値オブジェクトの実装

     COLUMN|不変のメリット

     2.3 値オブジェクトにする基準

     2.4 ふるまいをもった値オブジェクト

     2.5 値オブジェクトを採用するモチベーション

     2.6 まとめ



    Chapter 3 ライフサイクルのあるオブジェクト「エンティティ」

     3.1 エンティティとは

     3.2 エンティティの性質について

     COLUMN|セーフティネットとしての確認

     3.3 エンティティの判断基準としてのライフサイクルと連続性

     3.4 値オブジェクトとエンティティのどちらにもなりうるモデル

     3.5 ドメインオブジェクトを定義するメリット

     3.6 まとめ



    Chapter 4 不自然さを解決する「ドメインサービス」

     4.1 サービスが指し示すもの

     4.2 ドメインサービスとは

     4.3 ドメインサービスの濫用が行き着く先

     4.4 エンティティや値オブジェクトと共にユースケースを組み立てる

     COLUMN|ドメインサービスの基準

     4.5 物流システムに見るドメインサービスの例

     COLUMN|ドメインサービスの命名規則

     4.6 まとめ



    Chapter 5 データにまつわる処理を分離する「リポジトリ」

     5.1 リポジトリとは

     COLUMN|リポジトリはドメインオブジェクトを際立たせる

     5.2 リポジトリの責務

     5.3 リポジトリのインターフェース

     COLUMN|nullの是非とOption型

     5.4 SQLを利用したリポジトリを作成する

     5.5 テストによる確認

     5.6 テスト用のリポジトリを作成する

     5.7 オブジェクトリレーショナルマッパーを用いたリポジトリを作成する

     5.8 リポジトリに定義されるふるまい

     5.9 まとめ



    Chapter 6 ユースケースを実現する「アプリケーションサービス」

     6.1 アプリケーションサービスとは

     COLUMN|アプリケーションサービスという名前

     6.2 ユースケースを組み立てる

     COLUMN|煩わしさを減らすために

     COLUMN|エラーかそれとも例外か

     6.3 ドメインのルールの流出

     6.4 アプリケーションサービスと凝集度

     6.5 アプリケーションサービスのインターフェース

     6.6 サービスとは何か

     6.7 まとめ



    Chapter 7 柔軟性をもたらす依存関係のコントロール

     7.1 技術要素への依存がもたらすもの

     7.2 依存とは

     7.3 依存関係逆転の原則とは

     7.4 依存関係をコントロールする

     7.5 まとめ



    Chapter 8 ソフトウェアシステムを組み立てる

     8.1 ソフトウェアに求められるユーザーインターフェース

     COLUMN|ソフトウェアとアプリケーションの使い分け

     8.2 コマンドラインインターフェースに組み込んでみよう

     COLUMN|シングルトンパターンと誤解

     8.3 MVCフレームワークに組み込んでみよう

     COLUMN|コントローラの責務

     8.4 ユニットテストを書こう

     8.5 まとめ

     COLUMN|本当に稀な怪談話



    Chapter 9 複雑な生成処理を行う「ファクトリ」

     9.1 ファクトリの目的

     9.2 採番処理をファクトリに実装した例の確認

     COLUMN|ファクトリの存在に気づかせる

     9.3 ファクトリとして機能するメソッド

     9.4 複雑な生成処理をカプセル化しよう

     COLUMN|ドメイン設計を完成させるために必要な要素

     9.5 まとめ



    Chapter 10 データの整合性を保つ

     10.1 整合性とは

     10.2 致命的な不具合を確認する

     10.3 ユニークキー制約による防衛

     10.4 トランザクションによる防衛

     COLUMN|結局どれを使うべきか

     10.5 まとめ



    Chapter 11 アプリケーションを1から組み立てる

     11.1 アプリケーションを組み立てるフロー

     11.2 題材とする機能

     11.3 サークルの知識やルールをオブジェクトとして準備する

     11.4 ユースケースを組み立てる

     11.5 まとめ



    Chapter 12 ドメインのルールを守る「集約」

     12.1 集約とは

     COLUMN|集約を保持するコレクションを図に表すか

     COLUMN|よりきめ細やかなアクセス修飾子(Scala)

     12.2 集約をどう区切るか

     COLUMN|IDのゲッターに対する是非

     12.3 集約の大きさと操作の単位

     COLUMN|結果整合性

     12.4 言葉との齟齬を消す

     12.5 まとめ



    Chapter 13 複雑な条件を表現する「仕様」

     13.1 仕様とは

     13.2 仕様とリポジトリを組み合わせる

     COLUMN|遅延実行による最適化

     13.3 まとめ



    Chapter 14 アーキテクチャ

     14.1 アーキテクチャの役目

     14.2 アーキテクチャの解説

     14.3 まとめ



    Chapter 15 ドメイン駆動設計のとびらを開こう

     15.1 軽量DDDに陥らないために

     COLUMN|パターンの濫用とパターンを捨てるとき

     15.2 ドメインエキスパートとモデリングをする

     15.3 ユビキタス言語

     COLUMN|ユビキタス言語と日本語の問題

     15.4 境界付けられたコンテキスト

     15.5 コンテキストマップ

     15.6 ボトムアップドメイン駆動設計

     15.7 まとめ



    Appendix ソリューション構成

     A.1 ソフトウェア開発の最初の一歩

     COLUMN|C#特有のプロジェクト管理用語

     A.2 ソリューション構成

     A.3 まとめ

  • 出版社からのコメント

    ドメイン駆動設計の「きほん」が面白いほどよくわかる!あらゆるエンジニア必見の入門書の登場!
  • 内容紹介

    学習しやすいパターンが満載!

    ドメイン駆動設計をやさしく学べる入門書!



    【本書の概要】

    本書は、

    『エリック・エヴァンスのドメイン駆動設計』(ISBN978-4-7981-2196-3、翔泳社)、

    『実践ドメイン駆動設計』(ISBN978-4-7981-3161-0、翔泳社)

    に感銘を受けた著者が贈る、ドメイン駆動設計の入門書です。


    【対象読者】

    『エリック・エヴァンスのドメイン駆動設計』や

    『実践ドメイン駆動設計』をこれから読もうとしている方、

    もしくはすでに読んだものの、「もう少しやさしい入門書も読みたい」

    と感じているエンジニアの方を対象としています。



    【本書の特徴】

    ドメイン駆動設計において、実践が難しいものは後回しにして、

    理解しやすい実装パターンからドメイン駆動設計の世界に

    飛び込んでもらうことを目的としています。


    そこで初心者にとって、理解しやすい、そして実践しやすいパターンからスタートできるよう、

    解説を工夫しています。

    またドメイン駆動設計で頻出するパターンの記述方法やその目的も併せて解説しています。



    本書で解説するパターンは以下のとおりです。



    【知識を表現するパターン】

    ・値オブジェクト

    ・エンティティ

    ・ドメインサービス



    【アプリケーションを実現するためのパターン】

    ・リポジトリ

    ・アプリケーションサービス

    ・ファクトリ



    【知識を表現する、より発展的なパターン】

    ・集約

    ・仕様

  • 著者紹介(「BOOK著者紹介情報」より)(本データはこの書籍が刊行された当時に掲載されていたものです)

    成瀬 允宣(ナルセ マサノブ)
    岐阜県出身。プログラマ。プログラミングにはじめて触れたのは25歳のとき。業務システム開発からキャリアをはじめ、ゲーム、Webと業種を変えながらもアプリケーション開発全般に従事

ドメイン駆動設計入門―ボトムアップでわかる!ドメイン駆動設計の基本 の商品スペック

商品仕様
出版社名:翔泳社
著者名:成瀬 允宣(著)
発行年月日:2020/02/13
ISBN-10:479815072X
ISBN-13:9784798150727
判型:A5
発売社名:翔泳社
対象:専門
発行形態:単行本
内容:電子通信
言語:日本語
ページ数:375ページ
縦:21cm
他の翔泳社の書籍を探す

    翔泳社 ドメイン駆動設計入門―ボトムアップでわかる!ドメイン駆動設計の基本 [単行本] に関するレビューとQ&A

    商品に関するご意見やご感想、購入者への質問をお待ちしています!