0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

備忘録【現場で役立つシステム設計の原則】③

Posted at

##第3章 業務ロジックをわかりやすく整理する
###業務ロジックをわかりやすく整理する基本のアプローチ
☆データとロジックを一体にして業務ロジックを整理する
☆三層構造のそれぞれの関心事と業務ロジックの分離を徹底する

ダメなケースは、
・データクラスと機能クラスを分けると変更が大変になる
・データクラスを使うと業務ロジックの重複が増える
・共通機能ライブラリで汎用化、細分化してもほとんど失敗する

###データとロジックを一体にして業務ロジック分離を整理する

####業務ロジックを重複させないための設計
使う側のクラスのコードがシンプルになるように設計すること
☆メソッドをロジックの置き場所にする
 インスタンス変数を渡すだけのgetterメソッドは書かない
☆業務ロジックをデータを持つクラスに移動する
☆使う側のクラスにロジックを書き始めたら設計を見直す
 オブジェクト指向設計は、改善の繰り返し。
☆メソッドを短くして、ロジックの移動をやりやすくする
☆メソッドでは必ずインスタンス変数を使う
☆クラスが肥大化したら小さく分ける
☆パッケージを使ってクラスを整理する

###三層のそれぞれの関心事と業務ロジックの分離を徹底する
業務データと業務ロジックを一つにまとめたオブジェクトをドメインオブジェクトという。
ドメインオブジェクトとして小さい単位に分けて整理すると、クラス数が膨大になる。その場合は、パッケージ化を進める。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?