Forget Service Objects, Write Command Objects in Ruby
The term “service object” can mean different things depending on who you talk to
or what project you inherited, hence why I put them in quotes. Since there’s not
really a “Rails Way” to put business logic, it was common to shove everything
into Active Record models. When that went awry, the concept of service objects
came onto the scene and provided a pathway for storing domain logic in plain
Ruby objects.