「ビジネスロジック」の版間の差分
imported>Administrator |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| (2人の利用者による、間の6版が非表示) | |||
| 1行目: | 1行目: | ||
'''ビジネスロジック'''([[英語]]:business | '''ビジネスロジック'''([[英語]]:business logic)とは、業務システムにおける「業務の動き」のことで、[[UI]]などの表面的な部分を除いた核心部分のことです。 | ||
「ビジネス」とありますが実際には業務システムに限ったものではなく例えば[[ゲーム]]のメイン処理もビジネスロジックです。 | |||
==概要== | ==概要== | ||
大雑把にいえばビジネスロジックは[[データ]] | 大雑把にいえばビジネスロジックは[[データ]]に対するUI部分を除いた操作であり、業務内容として本来あるべき流れです。業務内容の[[フローチャート]]に[[CRUD図]]的な[[データ]]の整合性を保つような仕様まで書き込んだものだと思えば間違いない。 | ||
いわゆる「3階層システム」(3-tier system)では、プレゼンテーション層(ユーザインターフェース層)とデータアクセス層(データベース層)の中間に位置し、ビジネスロジック層あるいはアプリケーション層と呼ばれる。[[プログラマ]]に馴染みの深い[[MVC]]や[[MVVM]] | いわゆる「3階層システム」(3-tier system)では、プレゼンテーション層(ユーザインターフェース層)とデータアクセス層(データベース層)の中間に位置し、ビジネスロジック層あるいはアプリケーション層と呼ばれる。 | ||
ビジネスロジックは[[フロー]]と[[データ]]で出来ており、人間による詳細な操作などは排除されたものであり、この段階ではプラットフォームには依存しない。 | |||
[[仕様書]]のようなものである。 | |||
[[プログラマ]]に馴染みの深い[[MVC]]や[[MVVM]]でいう「モデル層」をさらに細分化して、ビジネスロジック層(データに対する操作)とデータアクセス層(単純なデータ、いわゆる[[POCO]])にしたものと思ってほぼ間違いない。このためMVCと3階層システムを混ぜると、モデル層がビジネスロジック層とデータアクセス層に分解され、データアクセス、ビジネスロジック、ビュー、コントローラの4階層になる。 | |||
* モデル(ビジネスロジック、データアクセス) | * モデル(ビジネスロジック、データアクセス) | ||
* ビュー(ユーザーインターフェイス) | * ビュー(ユーザーインターフェイス) | ||
* コントローラ(その他) | * コントローラ(その他) | ||
==MVVMとの相性== | ==MVVMとの相性== | ||
| 28行目: | 29行目: | ||
*[[ASP.NET Web API/NUnitでユニットテストを行う]] | *[[ASP.NET Web API/NUnitでユニットテストを行う]] | ||
[[category: プログラミング]] | |||