skillup

技術ブログ

プログラミング全般

オブジェクト指向 ドメインモデル

投稿日:2017年7月25日 更新日:

本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。

本日は主にドメインモデルの考え方について。

ドメインモデルの考え方

要点

  • 業務的な関心ごととドメインモデルの結合
  • 分析、設計、実装、それぞれのフェーズでの考え方
  • なるべく具体的で業務に直結したオブジェクトを設計する
  • 大きい単位はパッケージにする
  • 関心ごとはクラスにする
  • 業務フロー図とパッケージ図
  • 業務の関心ごとというのは主にイベント(取引データ系)とリソース(マスタ系)とサマリー系(集計と履歴)
  • 業務上の約束事をメソッドにする
  • 業務関心をメモしていく
  • 業務の言葉とコードを一緒にする
  • ドメインをボトムアップで業務の関心ごとから再構成する

感想

MVCいうとModelにやや近いでしょうか。肥大化するモデルを分割、整理しようというのがドメインモデルのメリットの1つでもあるようです。

リンク先はMVCとドメインモデルの関連に関して。まとまっててわかりやすいなー。私もこれぐらいすっきり説明できるようになりたい。

MVCのモデルを分割する方法

-プログラミング全般

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

画面の制御フローなど

複雑な帳票系アプリではよくあると思うのですが、ある入力値が複数の場所から影響を受けており、制御がなかなか難しいときなどがあります。 例として クリアボタンなどでクリアされる 他のプルダウンなどで影響を …

no image

トランザクショントークンについて

フォーム画面で入力を行うときにはPOSTでデータを受け取ってエラーチェックしたり、データベースに入力をしたりします。 ただその時に何も考えずに安易に送信→受信の際に以下のようなトラブルがあり得ます。 …

no image

データ構造の基礎知識 中編 ハッシュ

前回の続きです。 前回は配列、連結リストについて学習したので今回はハッシュについて学習します。 Contents1 ハッシュとは?1.1 メリット1.2 デメリット ハッシュとは? key-value …

no image

webの仕組み その1 Webの基本的なイメージ

Webの仕組みについて基礎からちょっと勉強しようかと。自分用なのでまとまってません(爆) Contents1 Webの基本的なイメージ2 HTTPメソッド Webの基本的なイメージ ネットワーク上のリ …

no image

データ構造の基礎知識 前編 メモリとポインタ、配列と連結リスト

WEB+DB(vol91)で使えそうな連載記事がありますのでブログにメモリます。 テーマはデータ構造です。 Contents1 データ構造とは?2 計算量3 プログラムとメモリ4 配列について4.1 …