BETA

現場で役立つシステム設計の原則 7章

投稿日:2019-04-28
最終更新:2019-04-28

-画面で操作することと業務ルールは違うことがある。

  • 画面の表示ロジックと業務ロジックも分ける、のですが油断すると混ざる。
  • 画面で操作することをそのままアプリケーション層に持ち込むと、確実に大きなクラスの出来上がり。
  • ドメインオブジェクト、ドメインモデルを駆使して関心ごとを分けていって、小さくしていくのが良さそう。
  • 画面も単機能、タスクベースに分解、するのが良いが、ここはなかなか要相談。
  • 1画面で色々入力する画面でも、裏で分割しておいたドメインオブジェクトを操作するようにしておけば、変更に強くなりそうだ。
  • 画面にそのままドメインオブジェクトにあるデータを出せれば結構勝ちパターンだが、画面とドメインオブジェクトの情報がずれてるのは結構ありそう。
  • こういう時は、ドメインオブジェクトを見直してみるか、ビュー専用オブジェクトを作る。
  • 画面で出しわけが必要な場合、出しわけロジックをドメインオブジェクトに持たせるのは、違和感がある。
  • ビューとモデルは分離させたい。ロジックの変更を楽にするなら、ドメインオブジェクト、ということだが。
  • 表現も業務ルールと捉えてドメインオブジェクトに持たせるか?
  • 画面項目の並び順と、ドメインオブジェクトのコードのプロパティの並び順も物理的に一致させる、っていうのは、これはちょっとした工夫かな?あくまでも利用者の関心に合わせる、と。
  • なんでもありの画面の時は、逆にドメインオブジェクトから画面はこうあるべきだ、っていうことを提示するというのもあり。
  • ドメインオブジェクトは業務ルールを表すから、ドメインオブジェクトに合わせる方が使い勝手が良くなりそう。
  • リリースノートとか利用者ガイド、マニュアルとドメインオブジェクトの整合性が取れているか、という視点。
  • 特に利用者ガイドに書かれていることと、ドメインオブジェクトに書かれているルールがずれていると、何かがおかしい。
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

yodai_u_uの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!