1

私は MVC と OOP を学んでいますが、何か混乱しています:

ビジネス ロジックとアプリケーション ロジックの違いは何ですか?

次の支払いおよび請求システムのシナリオを見てみましょう。

顧客は請求書を受け取り、請求書を支払うと、画面上の支払いによって承認されます。ユーザーは、顧客から受け取った金額をシステムに入力します。

さて、アプリケーションロジックは次のとおりです(コントローラー内):

  • ユーザーは負の数を入力できません
  • ユーザーは、整数のみ、または ##、#.##、##.## などのスタイルで入力を入力する必要があります。

ビジネス ロジック (モデル内):

  • 入力した金額は、請求書の金額を超えることはできません (つまり、支払期日)。
  • および/または入力された金額は、以前に一部の支払いが行われた場合、未払いの金額を超えることはできません

私は正しい考えを持っていますか?

4

2 に答える 2

1

通常は、書式設定や検証を含むすべてのビジネス ロジックをモデルに組み込む必要があります。したがって、負の数を入力しないことは、コントローラーではなくモデルの焦点です。Skinny Controller、Fat Model 、そしておそらくDraperを使用したプレゼンター パターンを読んでください。Ryan Bates は最近、 Railscastsでこのような内容をかなりカバーしています。それも調べてみるのもいいかもしれません。

于 2012-09-16T08:47:54.040 に答える
0

ビジネス ロジックとは、ビジネス プロセスに違反できないルールを意味します。これらのルールはアプリケーションではなくビジネスに依存するため、最後の 2 つの例はビジネス ロジックです。

アプリケーション ロジックは、業務に関係のないロジックです。たとえば、リストした 2 番目の 2 つのルールに違反するため、最初の 2 つのルールが適用されていることを確認します。

とにかく私の2セント。

そうです、あなたは正しい軌道に乗っています。

于 2012-09-16T23:38:43.690 に答える