skillup

技術ブログ

プログラミング全般

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

投稿日:

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

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

ドメインモデルの考え方

要点

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

感想

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

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

http://hamamuratakuo.hatenablog.com/entry/2016/08/09/220522

-プログラミング全般

執筆者:


comment

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

関連記事

no image

バッチスクリプトで気をつけたい点

実務でバッチ処理を作る際に気をつけるべきと思ったこと。 基本的にエラーをいかに捉えていかにログに吐くかを最初に考える。まずはエラーありき。失敗するもの、想定した値がこない、あるいは値がないを前提として …

no image

テストのダミーデータ作成

データベースに大量のデータを作りたいときにいつもあああやhoge,aaaですとデータという感じがしないですし、抽出や集計ができません。 なるべく自然に近いデータが欲しいのですが、簡単に作れる方法があり …

no image

制御フローについて

リーダブルコード 7章。制御フロー(if文などの条件分岐)について ここらへんは個人個人癖がついているとおもいますが、確かに読みやすい、読みにくいというのはあるのでなるべく汎用性のある規則を身につけた …

no image

オブジェクト指向について その1

ちょっと最近、仕事でソースの書き方がいい加減になってきたのでオブジェクト指向について考え方を再確認しようと思います。 参考文献 SoftWareDesign 2015年9月号 何も考えずにプログラムを …

no image

コードの分割

今回はリーダブルコードの8章。コードの分割について。 ポイントとしては1行に情報を詰め込みすぎているような場合は分割して、意味がわかりやすい区切りにまとめよう、といったことでしょうか。つまりは「困難は …