ASP.NETMVCアプリケーションとJavaWebアプリケーションでは、ビジネスロジックを別のパッケージ/ dllに保持し、データベースや配信メカニズム(Webアプリケーション、Webサービス、ネイティブモバイルまたはデスクトップなど)を次のように扱うという一般的な方法があります。プラグインされている詳細。
私が言えるこのタイプの構造化の利点のいくつかは次のとおりです。
- さまざまな配信メカニズムまたは永続化レイヤーを使用したビジネスロジックの再利用
- Webフレームワークをロードしたり、データベースに接続したりしなくても、ビジネスロジックの受け入れテストと単体テストを実行できます。テストは非常に高速です
- アプリケーションがどのように配信されるかではなく、それが何であるかという観点からアプリケーションを考える
しかし、この慣行はRailsコミュニティでは一般的ではありません。ビジネスロジックがgemに保持され、メインのORMがすべて永続ロジックとビジネスロジックを結び付けているRailsアプリケーションは見当たりません。私が述べたようにアプリケーションを構造化する必要がないRubyについて何かありますか?