Service Object

Noun · Development

Definitions

  1. A plain Ruby (or similar language) object that encapsulates a single business operation — such as `CreateOrder` or `SendInvitation` — extracting complex logic out of controllers and models into a focused, testable class typically exposing a single public `call` method.

    In plain English: A small, focused class that handles one specific business action, keeping controllers and models from getting bloated.

    Example: "The controller just calls CreateSubscription.call(user, plan) — all the Stripe integration, email, and audit logging lives in that service object."

Related Terms