Railsを使ったアプリケーションの特定の場面では、「サービスレイヤ」や「サービスオブジェクト」という概念を導入すると有効に機能することがあります。今回は、その紹介をします。 まず、サービスレイヤとは何でしょうか。『Patterns of Enterprise Application Architecture(以下、P of EAA)』では「サービスレイヤは利用可能な操作を定め、各操作へのアプリケーションレスポンスを取りまとめる」と定義されています(参照)。ユーザーインタフェースなどからの呼び出しを受け付けるアプリケーションの境界として、ビジネスロジック、トランザクション制御、レスポンスなどの取りまとめをするのが、サービスレイヤの役割です。 では、どのようなときにサービスレイヤを導入するのでしょうか。P of EAAには、次のように記述されています。 You probably don’t
![Railsにおける「サービスレイヤ」「サービスオブジェクト」について – recompile.net](https://cdn-ak-scissors.b.st-hatena.com/image/square/527dc54e5038e6c3cf2a3c8d49253f3f8633ef73/height=288;version=1;width=512/https%3A%2F%2Frecompile.net%2Fimages%2Fogp-image-default.jpg)