メニュー

pospomeのサーバサイドアーキテクチャ3

発売日: 2019/9/22 全文検索: 対応
★★★★★ ★★★★★ 0件
いくつかの実装パターンをまとめたTips集です。
サンプルコードはGo言語ですが、内容としてはサーバサイド、クライアントサイドに関係なく役に立つものをピックアップしました。
それぞれの章は独立しているので、興味のあるところだけ読み進めることができます。
第4章の"詳解仕様パターン"はDDDにおいてマイナーながらも強力な仕様パターンについて詳しく説明しています。
DDDに興味のある方にはおすすめできる内容となっています。
目次プレビュー
  • はじめに
  • 第1章 実装におけるSimple Or EasyとSimple And Easy
  • 第2章 意図しない責務の肥大化
  • 本書の内容
  • 著者
  • 誤字脱字報告フォーム
  • 免責事項
  • 1.1 はじめに
  • 1.2 SimpleとEasyの違い
  • 1.3 Simple Or Easy
  • 1.4 Simple And Easy
  • 1.5 おわりに
  • 2.1 はじめに
  • 2.2 コードは肥大化する
  • 2.3 意図しない責務の肥大化
  • 2.4 意図しない責務の肥大化の正体
  • 2.5 意図しない責務の肥大化を防ぐコツとその難しさ
    • 2.5.1 既存コードに手を入れるときは注意する
    • 2.5.2 既存コードの責務を一度考える
    • 2.5.3 あとでコード全体を俯瞰する
  • 2.6 おわりに
  • 3.1 はじめに
  • 3.2 if文が消えるとは?
  • 3.3 if文を消せるケース
  • 3.4 if文を消せないインターフェースは利用する必要がないのか?
  • 3.5 インターフェース実装を選択するための実装パターン
    • 3.5.1 クライアントコードに直接定義する
    • 3.5.2 コンストラクタ内で選択する
    • 3.5.3 インターフェース実装を選択する専用のFactoryを作る
    • 3.5.4 インターフェース実装にif文を持たせる
  • 3.6 おわりに
  • 4.1 はじめに
  • 4.2 一旦仕様パターンを忘れて考えるバリデーションの基本
    • 4.2.1 1.そのオブジェクト自体に置く
    • 4.2.2 2.そのオブジェクト以外に置く
  • 4.3 仕様パターンの正体
  • 4.4 DDDの仕様パターン
  • 4.5 具体的な実装
    • 4.5.1 構造体を利用する場合
    • 4.5.2 関数を利用する場合
  • 4.6 具体的なパッケージ構成
    • 4.6.1 関連するドメインオブジェクトと同じパッケージに置く
    • 4.6.2 専用パッケージを作る
  • 4.7 仕様パターンにおける3つの用法
    • 4.7.1 検証
    • 4.7.2 選択
    • 4.7.3 生成
  • 4.8 ドメインサービスと仕様パターンの違い
  • 4.9 仕様パターンを使う基準
  • 4.10 おわりに
奥付

まだレビューが投稿されていません